Frage

Ich habe eine Datei gespeichert als UCS-2 Little Endian ich die Codierung ändern möchten, damit ich den folgenden Code lautete:

cat tmp.log -encoding UTF8 > new.log

Die resultierende Datei ist nach wie vor in UCS-2 Little Endian. Ist dies, weil die Pipeline immer in diesem Format ist? Gibt es einen einfachen Weg, um Rohr dieses in eine neue Datei als UTF-8?

War es hilfreich?

Lösung

Wie vorgeschlagen hier :

Get-Content tmp.log | Out-File -Encoding UTF8 new.log

Andere Tipps

Ich würde es tun, wie folgt:

get-content tmp.log -encoding Unicode | set-content new.log -encoding UTF8

Mein Verständnis ist, dass die -encoding Option, um den encdoing wählt, dass die Datei in gelesen oder geschrieben werden soll.

load Inhalt von XML-Datei mit Codierung.

(Get-Content -Encoding UTF8 $ filename)

Wenn Sie eine XML-Datei lesen, hier ist eine noch bessere Möglichkeit, die zur Codierung von XML-Datei paßt:

$xml = New-Object -Typename XML
$xml.load('foo.xml')
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top