मैं कुछ CSV फ़ाइलों के साथ काम कर रहा हूँ, निम्नलिखित कोड के साथ:
reader = csv.reader(open(filepath, "rU")) कोशिश करें: रीडर में पंक्ति के लिए: प्रिंट "पंक्ति सफलतापूर्वक पढ़ी गई!", csv को छोड़कर पंक्ति। त्रुटि, e: sys.exit ("फ़ाइल% s, पंक्ति% d:% s"% (फ़ाइल नाम, रीडर। लाइन_नम, ई))
और एक फ़ाइल इस त्रुटि को उत्पन्न कर रही है:
file my.csv, पंक्ति 1: पंक्ति में NULL बाइट है
मैं क्या कर सकता हूँ? Google ऐसा लगता है कि यह एक एक्सेल फ़ाइल हो सकती है जिसे अनुचित तरीके से .csv के रूप में सहेजा गया है। क्या पाइथन में इस समस्या को हल करने का कोई तरीका है?
== अद्यतन ==
नीचे @JohnMachin" की टिप्पणी के बाद, मैंने अपनी स्क्रिप्ट में इन पंक्तियों को जोड़ने का प्रयास किया:
print repr(open(filepath, "rb").read(200)) # डंप 1 फ़ाइल डेटा के 200 बाइट्स = open(filepath, "rb").read() प्रिंट डेटा। find("x00") प्रिंट data.count("x00")
और यह मुझे मिला आउटपुट है:
"xd0xcfx11xe0xa1xb1x1axe1x00x00x00x00x00x00x00x00x00 .... <स्निप> 8 13834
इसलिए फ़ाइल में वास्तव में NUL बाइट्स हैं।