将混合字节数据处理成 python 列表
Process mixed bytes data into python list
我正在读取数据远程 .dat 文件以进行 EDI 数据处理。
原始数据是一些字符串字节:
b'MDA1MDtWMjAxOS44LjAuMDtWMjAxOS44LjAuMDsyMDIwMD.........'
使用解码如下...
byte_data = base64.b64decode(byte_data)
给我以下字节数据。有没有更好的方法将以下字节数据处理到 python 列表中?
b"0050;V2019.8.0.0;V2019.8.0.0;20200407;184821\r\n0070;;7;0;7\r\n0080;11;50;bot.pdf;Driss;C:\Dat\Abl\\r\n0090;1;Z;Zub\xf6r;0;0;0;Zub\xf6r;;;Zub\xf6r\r\n
尝试使用 uft-8 解码,没有成功。
byte_data.decode('utf-8')
厌倦了转换为字符串并读取为 CSV 但无济于事,找到了原始数据。需要保留一些字符串原样并转换 \xf6r \r \n
data = io.StringIO(above_data)
data.seek(0)
csv_reader = csv.reader(data, delimiter=";")
它不适用于 'utf-8',因为它不是 'utf-8',它可能是 'ISO-8859-1'(latin-1)
text = byte_data.decode('ISO-8859-1')
因为 \xf6
在 'ISO-8859-1'
中是 ö
确定是utf-8编码的吗?
这可能有助于指导使用哪种解码器:
import chardet
print(cardet.detect(byte_data))
我正在读取数据远程 .dat 文件以进行 EDI 数据处理。
原始数据是一些字符串字节:
b'MDA1MDtWMjAxOS44LjAuMDtWMjAxOS44LjAuMDsyMDIwMD.........'
使用解码如下...
byte_data = base64.b64decode(byte_data)
给我以下字节数据。有没有更好的方法将以下字节数据处理到 python 列表中?
b"0050;V2019.8.0.0;V2019.8.0.0;20200407;184821\r\n0070;;7;0;7\r\n0080;11;50;bot.pdf;Driss;C:\Dat\Abl\\r\n0090;1;Z;Zub\xf6r;0;0;0;Zub\xf6r;;;Zub\xf6r\r\n
尝试使用 uft-8 解码,没有成功。
byte_data.decode('utf-8')
厌倦了转换为字符串并读取为 CSV 但无济于事,找到了原始数据。需要保留一些字符串原样并转换 \xf6r \r \n
data = io.StringIO(above_data)
data.seek(0)
csv_reader = csv.reader(data, delimiter=";")
它不适用于 'utf-8',因为它不是 'utf-8',它可能是 'ISO-8859-1'(latin-1)
text = byte_data.decode('ISO-8859-1')
因为 \xf6
在 'ISO-8859-1'
ö
确定是utf-8编码的吗?
这可能有助于指导使用哪种解码器:
import chardet
print(cardet.detect(byte_data))