J'ai un fichier enregistré sous UCS-2 Little Endian, je veux changer l'encodage, j'ai donc exécuté le code suivant:
cat tmp.log -encoding UTF8 > new.log
Le fichier résultant est toujours dans UCS-2 Little Endian. Est-ce parce que le pipeline est toujours dans ce format? Existe-t-il un moyen simple de rediriger cela vers un nouveau fichier au format UTF8?
Comme suggéré ici :
Get-Content tmp.log | Out-File -Encoding UTF8 new.log
Je le ferais comme ça:
get-content tmp.log -encoding Unicode | set-content new.log -encoding UTF8
Ma compréhension est que l'option -encoding sélectionne l'encdoing que le fichier doit être lu ou écrit.
charger le contenu du fichier xml avec encodage.
(Get-Content -Encoding UTF8 $ fileName)
Si vous lisez un fichier XML, voici une méthode encore meilleure qui s'adapte à l'encodage de votre fichier XML:
$xml = New-Object -Typename XML
$xml.load('foo.xml')