Erreur CSV Python : la ligne contient l’octet NULL

| | | | | | | |

Je travaille avec des fichiers CSV, avec le code suivant :

reader = csv.reader(open(filepath, "rU")) try : for row in reader : print "Ligne lue avec succès !", ligne sauf csv.Error, e : sys.exit("file %s, line %d : %s" % (filename, reader.line_num, e)) 

Et un fichier génère cette erreur :

file my.csv, line 1 : line contains NULL byte 

Que puis-je faire ? Google semble suggérer qu'il peut s'agir d'un fichier Excel qui a été enregistré au format .csv de manière incorrecte. Existe-t-il un moyen de contourner ce problème en Python ?

== UPDATE ==

Suite au commentaire de @JohnMachin ci-dessous, j'ai essayé d'ajouter ces lignes à mon script :

print repr(open(filepath, "rb").read(200)) # dump des 200 premiers octets de données du fichier = open(filepath, "rb").read() print data. find("x00") print data.count("x00") 

Et voici le résultat que j'ai :

"xd0xcfx11xe0xa1xb1x1axe1x00x00x00x00x00x00x00x00 .... <couper> 8 13834 

Le fichier contient donc bien des octets NUL.