La conversion de xml UTF-16 pour de l'UTF-8 à l'aide de PowerShell
Quelle est la façon la plus simple pour convertir du XML à partir de UTF16 à un fichier encodé en UTF8?
Vous devez vous connecter pour publier un commentaire.
Quelle est la façon la plus simple pour convertir du XML à partir de UTF16 à un fichier encodé en UTF8?
Vous devez vous connecter pour publier un commentaire.
Cela peut ne pas être la plus optimale, mais il fonctionne. Il suffit de charger le fichier xml et le pousser à revenir à un fichier. le xml de la rubrique est perdu, donc ce doit être ajouté.
Bien, je crois que le plus simple est de tout simplement ne pas se soucient de savoir si le fichier est XML ou pas et de convertir simplement:
Cela ne fonctionne que pour XML quand il n'y a pas de
ligne.
gci -rec -fi * | %{(gc $_ -enc unicode) | set-content -enc utf8 $_.fullname}
. Assez simple, en fait.gci -rec -fi * | %{(gc $_.fullname -enc unicode) | set-content -enc utf8 $_.fullname}
FullName
là.Get-Content
sait comment traiter avec unFileInfo
.Get-Content : Cannot find path 'C:\WorkingFolder\FileName.txt' because it does not exist. At line:1 char:26 + gci -rec -fi *.txt | %{(gc <<<< $_ -enc ascii) | set-content -enc utf8 $_.fullname} + CategoryInfo : ObjectNotFound: (C:\WorkingFolder\FileName.txt:String) [Get-Content], ItemNotFoundException + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetContentCommand
FileName.txt était dans un sous-dossier de C:\WorkingFolder.D'essayer cette solution qui utilise un
XmlWriter
:Vous pouvez regarder la
XMLDocument
pour plus d'explication surCreateXmlDeclaration
.