Das Lesen von UTF-8 mit BOM mithilfe des Python-CSV-Moduls führt zu unerwünschten zusätzlichen Zeichen. [duplizieren]

9

Ich versuche, eine CSV-Datei mit Python mit dem folgenden Code zu lesen:

%Vor%

Mein example.txt hat nur folgenden Inhalt:

%Vor%

Für UTF-8- oder ANSI-kodierte Dateien gibt dies die erwartete Ausgabe:

%Vor%

Aber wenn ich die Datei als UTF-8 mit BOM speichern, bekomme ich diese Ausgabe:

%Vor%

Da ich keine Kontrolle darüber habe, welche Dateien der Benutzer als Eingabe verwenden soll, möchte ich, dass dies auch mit BOM funktioniert. Wie kann ich dieses Problem beheben? Muss ich etwas tun, um sicherzustellen, dass dies auch für andere Kodierungen funktioniert?

    
Anders 18.11.2015, 16:34
quelle

1 Antwort

3

Sie können das unicodecsv Python-Modul wie folgt verwenden:

%Vor%

Also für eine Eingabedatei, die folgendes in UTF-8 mit BOM enthält:

%Vor%

Es würde Folgendes angezeigt:

%Vor%     
Martin Evans 18.11.2015 16:48
quelle