我将收到一个 ebcdic 编码的数据。 类似于:
s = u'@@@@@@@@@@@@@@@@@@@ÂÖÉâÅ@ÉÄ'
尝试使用
.decode('cp500')
是错误的,但正确的方法是什么?如果我将字符串复制到像Notepad++这样的软件中,我可以将其从EBCDIC转换为ascii,但我似乎找不到在Python中实现相同目的的可行方法。值得一提的是,正确的结果是:BOISE ID
(加或减空格填充)。该信息是从包含JSON对象行的文件中检索出来的。该文件如下所示:
{ "command": "flush-text", "text": "@@@@@O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@O" }
{ "command": "flush-text", "text": "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\u00C9\u00C4@\u00D5\u00A4\u0094\u0082\u0085\u0099z@@@@@@@@@@\u00D9\u00F5\u00F9\u00F7\u00F6\u00F8\u00F7\u00F2\u00F4" }
{ "command": "flush-text", "text": "@@@@@OmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmO" }
{ "command": "flush-text", "text": "@@@@@O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@O" }
处理循环大致如下:
with open('myfile.txt', 'rb') as fh:
for line in fh:
data = json.loads(line)
json.loads
。说实话,这有点混乱。但是我正在努力想办法从我手头的东西转换成我需要的东西。 - g.d.d.c