Python-CSV-Fehler: Zeile enthält NULL-Byte

| | | | | | | |

Ich arbeite mit einigen CSV-Dateien mit folgendem Code:

reader = csv.reader(open(filepath, "rU")) try: for row in reader: print "Zeile erfolgreich gelesen!", Zeile außer csv.Error, e: sys.exit("file %s, line %d: %s" % (filename, reader.line_num, e)) 

Und eine Datei wirft diesen Fehler:

Datei my.csv, Zeile 1: Zeile enthält NULL-Byte 

Was kann ich tun? Google scheint darauf hinzudeuten, dass es sich möglicherweise um eine Excel-Datei handelt, die nicht ordnungsgemäß als CSV-Datei gespeichert wurde. Gibt es eine Möglichkeit, dieses Problem in Python zu umgehen?

== UPDATE ==

Nach dem Kommentar von @JohnMachin unten habe ich versucht, diese Zeilen zu meinem Skript hinzuzufügen:

print repr(open(filepath, "rb").read(200)) # erste 200 Bytes der Dateidaten ausgeben = open(filepath, "rb").read() print data. find("x00") print data.count("x00") 

Und das ist die Ausgabe, die ich bekommen habe:

"xd0xcfx11xe0xa1xb1x1axe1x00x00x00x00x00x00x00x00 .... <schnipsen> 8 13834 

Die Datei enthält also tatsächlich NUL-Bytes.