2015-03-04 2 views
0

Я пытаюсь использовать библиотеку unicodecsv питона в питона 2.7.xCharMap символов Кодек косяк кодируют в положение хх - хх

import codecs 
import unicodecsv 

def read(self, path): 
    with codecs.open(path, "rb", encoding = "utf-8") as f: 
     r = unicodecsv.reader(f, encoding = 'utf-8')  
     row = r.next() 
     print row 


read("unicode.csv") 

Ошибка: CharMap кодека косяка кодирования символов в позиции хх - хх

я вручную конвертирован мой файл CSV в UTF-8 с помощью .txt в редактор, так что я уверен, что входной файл прекрасно

+0

У Вас есть файл на самом деле в UTF-8 кодировке? –

+0

@ ZagorulkinDmitry да я. Я использую возвышенный текст для кодирования в utf-8 перед сохранением – aceminer

ответ

0

Я вижу несколько проблем с кодом:

def read(self, path): 

Вы не используете self не в class

после открытия файла с codecs.open вы можете использовать стандартный питон csv читателя.

С некоторыми изменениями:

f = "/home/dzagorulkin/workspace/zont/file.txt" 

import codecs 
#import unicodecsv 

def read(path): 
    with codecs.open(path, "rb", encoding = "utf-8") as f:    
     for line in f: 
      print line 
read(f) 

я использовал ни один файл ASCII и вывод:

Меня Дима зовут! Меня Дима зовут!

Смежные вопросы