Получение нулевого байта с помощью io.StringIO - PullRequest
0 голосов
/ 15 мая 2019

У меня есть код ниже

stream = io.StringIO(csv_file.stream.read().decode('utf-8-sig'), newline=None) // error is here

reader = csv.DictReader(stream)

list_of_entity = []
line_no, prev_len = 1, 0,

for line in reader:

При выполнении кода выше я получил ошибку ниже.

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa0 in position 252862: invalid start byte

Позже, чтобы исправить это, я попробовал следующее.

stream = io.StringIO(csv_file.stream.read().decode('unicode_escape'), newline=None)

reader = csv.DictReader(stream)

list_of_entity = []
line_no, prev_len = 1, 0,

for line in reader:// error is here

когда я изменяю декодирование как unicode_escape, выдается ошибка "

_csv.Error: line contains NULL byte" at above highlighted comment line.

В csv присутствует нулевой байт, я хочу его игнорировать или заменить. Может ли кто-нибудь помочь в этом.

...