Conversion d'un fichier texte en UTF-8 à l'invite de commandes Windows


17

J'ai besoin de convertir un fichier texte au format UTF-8 via l'invite de commande Windows. Cela doit être fait sur une autre machine et je n'ai pas le droit d'installer de logiciel sur cette machine. J'ai besoin de quelque chose comme:

c:\notepad   source-file target-file --encoding option

Existe-t-il un utilitaire d'invite de commandes Windows qui peut le faire?

Réponses:


29

J'ai besoin de convertir un fichier texte au format utf-8 via l'invite de commande Windows

Vous pouvez facilement le faire avec PowerShell:

Get-Content .\test.txt | Set-Content -Encoding utf8 test-utf8.txt

Lectures complémentaires


De plus, vous devez basculer vers PowerShell pour exécuter la commande, puis la quitter pour revenir à l'invite de commandes Windows.
user1107888

En effet. Ou exécutez-le directement dans un shell PowerShell.
DavidPostill

@DavidPostill une idée de la façon dont nous pouvons convertir plusieurs fichiers, c'est-à-dire le traitement de fichiers par lots avec la même ligne de commande?
vibs2006

1
@ vibs2006 Utilisez une ForEachboucle. Voir ForEach - PowerShell - SS64.com .
DavidPostill

Cette méthode se convertira-t-elle en UTF-8 ordinaire ou UTF-8-BOM?
Cale Sweeney


2

Voici pour chaque fichier converti * .text en fichier * .sql:

foreach ($file in get-ChildItem *.txt) {
    Echo $file.name
    Get-Content $file | Set-Content -Encoding utf8 ("$file.name" +".sql")
 }

après avoir exécuté un fichier sql, parfois une erreur, j'ai décidé d'utiliser linux avec la commande iconv =))
nobjta_9x_tq
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.