gpt4 book ai didi

python - 解码 Ebcdic

转载 作者:太空狗 更新时间:2023-10-30 00:54:44 27 4
gpt4 key购买 nike

我正在传递 ebcdic 编码的数据。像这样的东西:

s = u'@@@@@@@@@@@@@@@@@@@ÂÖÉâÅ@ÉÄ'

尝试 .decode('cp500') 是错误的,但正确的方法是什么?如果我将字符串复制到 Notepad++ 之类的东西中,我可以将它从 EBCDIC 转换为 ascii,但我似乎无法在 python 中找到可行的方法来实现相同的目的。对于它的值(value),正确的结果是: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)

最佳答案

如果 Notepad++ 可以正常转换,那么您应该只需要:

Python 2.7:

with io.open('myfile.txt', 'r', encoding="cp500") as fh:
for line in fh:
data = json.loads(line)

Python 3.x:

with open('myfile.txt', 'r', encoding="cp500") as fh:
for line in fh:
data = json.loads(line)

这使用 TextWrapper 在使用给定解码读取文件时对其进行解码。 io 模块提供 Python 3 open 到 Python 2.x,具有编解码器/TextWrapper 和通用换行符支持

关于python - 解码 Ebcdic,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35111900/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com