Ошибка Python CSV: строка содержит байт NULL

| | | | | | | |

Я работаю с некоторыми файлами CSV со следующим кодом:

reader = csv.reader(open(filepath, "rU")) try: for row in reader: print "Строка успешно прочитана!", строка, кроме csv.Error, e: sys.exit("file %s, line %d: %s" % (filename, reader.line_num, e)) 

И один файл выдает эту ошибку:

файл my.csv, строка 1: строка содержит NULL байт 

Что мне делать? Google кажется, предполагает, что это может быть файл Excel, который был неправильно сохранен как .csv. Есть ли способ обойти эту проблему в Python?

== UPDATE ==

Следуя комментарию @JohnMachin ниже, я попытался добавить эти строки в свой скрипт:

print repr(open(filepath, "rb").read(200)) # дамп первых 200 байт данных файла = open(filepath, "rb").read() print data. find("x00") print data.count("x00") 

И вот что я получил:

"xd0xcfx11xe0xa1xb1x1axe1x00x00x00x00x00x00x00x00 .... <отрезать> 8 13834 

Значит, файл действительно содержит NUL-байты.