我一直试图解压缩.gz文件并从中创建一个csv文件。然后,我需要对该csv文件进行排序。但是,在创建csv文件并对其进行排序后,我仍然收到错误消息。
我已经这样创建了文件:
with gzip.open("test.csv.gz", 'rb') as f_in:
with open("test.csv", 'wb') as f_out:
shutil.copyfileobj(f_in, f_out)
创建文件后,我像这样读取已排序的csv文件:
with open(filename, 'r') as input:
reader = csv.DictReader(input, delimiter='\t')
first_row = next(reader)
但是我仍然从上面的代码的最后一行得到以下错误。
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte
打开解压缩gz文件或打开csv文件我在做什么?
答案 0 :(得分:2)
gzip的魔幻数字是0x1f 0x8b ...因此错误表明它可能仍是gzip压缩的。