Wenn Sie über die PowerShell mit Import-CSV eine Datei importieren, werden die Umlaute unter Umständen nicht richtig dargestellt. Das liegt in der entsprechenden Kodierung begründet.
CSV (Comma-Seperated Values) Dateien werden als Textdateien gespeichert. Das bedeutet, diese Dateien werden mit einer Codierung versehen, die dann mit einem einfachen Texteditor (unabhängig vom Betriebssystem) gelesen werden kann. Das Gegenstück dazu sind Binärdateien, für die man entsprechende Programme zur Bearbeitung braucht. Beispielsweise Excel für eine XLSX Datei.
Wenn nun als Kodierung der ASCII Code verwendet wurde, sind z.B. Darstellungen der deutschen Umlaute nicht möglich. Der ASCII Code verwendet einen 7-Bit Zeichensatz, wohingegen UTF-8 8 Bit für den Zeichensatz verwendet und somit die Möglichkeiten der Zeichen erhöht.
Wenn beim Einlesen einer Datei mit Import-CSV die Umlaute als kryptische Zeichen dargestellt werden, liegt das vermutlich an der Verwendung der ASCII Kodierung.. Eine einfache Lösung des Problems ist, die Daten einzulesen und mit UTF-8 Kodierung wieder abzuspeichern.
Beispiel
$File = Umlaute.csv
$NewFile = Umlaute2.csv
Type $file -Encoding:String |Out-File $NewFile -Encoding UTF8
Nun können Sie die Umlaute2.csv Datei mit Import-csv importieren und erhalten auch die gewünschten Umlaute darstellbar.
Moin,
Klar, aber im konkreten Beispiel ging es um eine bereits importierte Datei.
Aber Danke für den Hinweis.
Grüße
Marco
Moin
Man kann auch beim Import das Encoding mit angeben:
Import-CSV -Path “” -Encoding UTF7
Gruß