Python 3.4,字节'的解码错误\x93&x27;
我只是将一个二进制模式的文件读入一个缓冲区,在该缓冲区上执行一些替换,然后将该缓冲数据插入MySQL数据库。无论采用何种编码标准,都会插入每个字节。我使用了Python 3.4,字节'的解码错误\x93&x27;,python,mysql,python-2.7,python-3.4,Python,Mysql,Python 2.7,Python 3.4,我只是将一个二进制模式的文件读入一个缓冲区,在该缓冲区上执行一些替换,然后将该缓冲数据插入MySQL数据库。无论采用何种编码标准,都会插入每个字节。我使用了Python2.7,它运行得很好 代码: with open(binfile,'rb') as fd_bin: bin_data = fd_bin.read() bin_data = bin_data.replace('"','\\"') db_cursor.execute("INSERT INTO table BIN_DA
Python2.7
,它运行得很好
代码:
with open(binfile,'rb') as fd_bin:
bin_data = fd_bin.read()
bin_data = bin_data.replace('"','\\"')
db_cursor.execute("INSERT INTO table BIN_DATA values {}".format(bin_data))
当我使用python 3.4版本时,它需要解码,所以我使用:
bin_data = fd_bin.read()
bin_data = bin_data.decode('utf-8') # error at this line
上述第二行产生错误:
bindata = bindata.decode('utf-8')
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x93 in position 1:invalid
start byte
我使用了latin-1
和iso-8859-1
解码方案,但它们在某些地方插入了一些额外的字节。当我从数据库中获取数据时,数据在本例中是不同的,但它是针对Python2.7版本的
如何插入该数据或解码该数据,而不考虑编码方案?我不能跳过或忽略字节。可能重复的。老实说,这个问题在StackOverflow上出现了很多次。