PowerShell Frage an die Codierungsprofis

pizza4ever

Lt. Commander
Registriert
Apr. 2009
Beiträge
1.665
Hallo,

ich habe hier ein File welches eine Merkwürdige Konvertierung hat und ich weiß nicht wie ich das in powershell in UTF-8 bekomme.

Ich habe folgendes erfolglos probiert:

Code:
$infile = 'a.CSV'
$outfile = 'OUTPUT_test.CSV'

$sr = New-Object System.IO.StreamReader($infile)
$sw = New-Object System.IO.StreamWriter($outfile, $false, [System.Text.Encoding]::ascii) #auch ::default geht nicht

$sw.Write($sr.ReadToEnd())

$sw.Close()
$sr.Close()
$sw.Dispose()
$sr.Dispose()

gehen tut:

Code:
Get-Content $inFile -Raw

trotzdem würde ich gerne mehr über die Kodierung dieses Files wissen und wie ich damit in .net / Powershell umgehe.

Danke und Gruß
 

Anhänge

  • a.CSV
    21 Bytes · Aufrufe: 202
PowerShell:
Get-Content -Path .\a.CSV | out-file -FilePath .\a_utf8.csv -Encoding utf8
Das file ist standard Windows ANSI, kann also normal mit Get-Content gelesen werden.
 
Das ist lustig, vorhin hatte ich da seeehr sicher ein Problem aber stand jetzt kann ich es nicht nachstellen. und mein code von vorhin läuft ohne Probleme.

Es handelt es sich wohl technisch um eine EBCDIC codierung, aber wenn es aktuell so erstmal läuft ist es mri auch erstmal ega.
 
Umso besser. Wobei mich wundert, dass deine Beispieldatei als ANSI-1252 bei mir fehlerfrei ausgelesen wird. Wenn ich mir EBCDIC 273 anschaue sollten die ja nicht kompatibel sein.

Ansonsten würde ich mich, solange die Performance nicht wichtig ist, bei PowerShell nicht mit StreamWriter rumschlagen. Meist kommt es ja auf eine Sekunde nicht an :)
 
Vielleicht irgendwann mal neu gespeichert und dann automatisch Windows-1252 gesetzt.

EBCDIC sieht völlig anders aus als 7bit codierung, das würde man sofort sehen, daß das weder ASCII noch ANSI noch unicode ist.

Wahrscheinlicher ist eher, daß es eine DOS-Codierung nach CP 437 oder 850 war, oder sogar etwas für diese Regionen Ungewöhnliches (jede Sprache hatte ihre Codepage, keine war kompatibel mit der anderen). CP 932 (Shift JIS) sieht als Multibyte Codepage sehr lustig aus, wenn man das als ASCII öffnet.
 
  • Gefällt mir
Reaktionen: pizza4ever und Renegade334

Ähnliche Themen

Zurück
Oben