- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
问题
我正在清理一些旧的韩语代码,我想将一些曾经是韩语的代码部分翻译成英语。但是,似乎出现了编码问题,文本不再是韩文。相反,这是一团乱码。
我想从断线到英文翻译。
我的计划是从损坏的字符串开始,使用用于在我的计算机上解码损坏的字符串的编解码器将其编码为二进制文件,使用韩文编解码器将该二进制文件解码为韩文,然后谷歌将该韩文翻译成英文。 问题是我不知道如何将这个烂摊子解码成可读的韩语。
我试过的
我开始编写一些 Python3 代码来翻译它,但我不断遇到编码错误,老实说,我不知道从哪里开始。编写此代码时假设韩国人使用 cp949
编解码器,我不确定。
fileIn = open('Broken_Korean.txt', 'r', encoding='cp949')
fileOut = open('Fixed_Korean.txt', 'w')
Lines = fileIn.readlines()
for line in Lines:
fileOut.write(str(line.encode('cp949')))
fileOut.write('\n')
fileOut.write(line.encode('cp949').decode('utf-8'))
我也研究过这个问题,但我没有发现任何突破性的东西。我相信用于显示损坏字符串的编解码器是 UTF-8,但我可能会弄错。我不知道原始韩语是怎么写的,除了它是使用“多字节编码方案(MBCS)”编写的。就上下文而言,编写的程序是 LabVIEW 2015。据推测,他们在编写初始代码时使用了韩文版本。
ÆÄÀÏ ´ëÈ »óÀÚ5
ÆÄÀÏ ´ëÈ »óÀÚ6
ÆÄÀÏ ´ëÈ »óÀÚ
幸运的是,一些编码错误发生在枚举上,所以我能够找到英文翻译。使用该翻译,我可以猜测古兰经可能是什么,但我不确定。我认为这可能有助于我推断使用的编解码器,但我不知道该怎么做。
À¯ÇÑ »ùÇÃ
= 有限样本 > 유한 샘플
¿¬¼Ó »ùÇÃ
= 连续样本 > 연속 샘플
Çϵå¿þ¾î ŸÀֿ̹¡ ÀÇÇÑ ´ÜÀÏ Æ÷ÀÎÆ®
= 硬件定时单点 > 하드웨어 타이밍 단일 포인트
ÆÄÀÏ ´ëÈ »óÀÚ5
ÆÄÀÏ ´ëÈ »óÀÚ6
ÆÄÀÏ ´ëÈ »óÀÚ
À¯ÇÑ »ùÇÃ
¿¬¼Ó »ùÇÃ
Çϵå¿þ¾î ŸÀֿ̹¡ ÀÇÇÑ ´ÜÀÏ Æ÷ÀÎÆ®
hexdump -C Broken_Korean.txt
000000 c3 86 c3 84 c3 80 c3 8f 20 c2 b4 c3 ab c3 88 c2 ........ .......
000010 ad 20 c2 bb c3 b3 c3 80 c3 9a 35 0d 0a c3 86 c3 . ........5.....
000020 84 c3 80 c3 8f 20 c2 b4 c3 ab c3 88 c2 ad 20 c2 ..... ........ .
000030 bb c3 b3 c3 80 c3 9a 36 0d 0a c3 86 c3 84 c3 80 .......6........
000040 c3 8f 20 c2 b4 c3 ab c3 88 c2 ad 20 c2 bb c3 b3 .. ........ ....
000050 c3 80 c3 9a 0d 0a c3 80 c2 af c3 87 c3 91 20 c2 .............. .
000060 bb c3 b9 c3 87 c3 83 0d 0a c2 bf c2 ac c2 bc c3 ................
000070 93 20 c2 bb c3 b9 c3 87 c3 83 0d 0a c3 87 c3 8f . ..............
000080 c2 b5 c3 a5 c2 bf c3 be c2 be c3 ae 20 c3 85 c2 ............ ...
000090 b8 c3 80 c3 8c c2 b9 c3 96 c2 bf c2 a1 20 c3 80 ............. ..
0000a0 c3 87 c3 87 c3 91 20 c2 b4 c3 9c c3 80 c3 8f 20 ...... ........
0000b0 c3 86 c3 b7 c3 80 c3 8e c3 86 c2 ae ............
最佳答案
hexdump 中的数据可能被读取为 ISO-8859-1(又名 Latin-1
)并重新保存为 UTF-8。要反转,解码为 UTF-8 以获得原始 cp939
字节值,但在 Unicode 字符串中作为 Unicode 代码点。 latin1
编解码器占用前 256 个码位,用它编码会得到一个字节串,其字节值相同。然后可以应用正确的编解码器解码回 Unicode 字符串:
data = bytes.fromhex('''
c3 86 c3 84 c3 80 c3 8f 20 c2 b4 c3 ab c3 88 c2
ad 20 c2 bb c3 b3 c3 80 c3 9a 35 0d 0a c3 86 c3
84 c3 80 c3 8f 20 c2 b4 c3 ab c3 88 c2 ad 20 c2
bb c3 b3 c3 80 c3 9a 36 0d 0a c3 86 c3 84 c3 80
c3 8f 20 c2 b4 c3 ab c3 88 c2 ad 20 c2 bb c3 b3
c3 80 c3 9a 0d 0a c3 80 c2 af c3 87 c3 91 20 c2
bb c3 b9 c3 87 c3 83 0d 0a c2 bf c2 ac c2 bc c3
93 20 c2 bb c3 b9 c3 87 c3 83 0d 0a c3 87 c3 8f
c2 b5 c3 a5 c2 bf c3 be c2 be c3 ae 20 c3 85 c2
b8 c3 80 c3 8c c2 b9 c3 96 c2 bf c2 a1 20 c3 80
c3 87 c3 87 c3 91 20 c2 b4 c3 9c c3 80 c3 8f 20
c3 86 c3 b7 c3 80 c3 8e c3 86 c2 ae
''')
fixed = data.decode('utf8').encode('latin1').decode('cp949')
print(fixed)
输出:
파일 대화 상자5
파일 대화 상자6
파일 대화 상자
유한 샘플
연속 샘플
하드웨어 타이밍에 의한 단일 포인트
翻译(谷歌翻译):
File Dialog 5
File Dialog 6
File dialog
Finite sample
Continuous sample
Single point by hardware timing
如果从文件开始,将文件读取为 UTF-8,应用修复,然后将其写回(正确的)UTF-8:
with open('Broken_Korean.txt', 'r', encoding='utf8') as f:
data = f.read().encode('latin1').decode('cp949')
with open('Fixed_Korean.txt', 'w', encoding='utf8') as f:
f.write(data)
关于python - 将不良文本转换为韩语,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66617016/
有人可以为韩语、印尼语、泰语和越南语推荐一个开源的 POS 标记器吗? 我可以用它来标记我目前拥有的语料库数据。 (例如 the stanford-postagger ) 如果您是开发人员并且愿意分享
我正在尝试在同一个文件中写出英语、日语和韩语。 这是我的做法: new File("genned/test123.txt").write("안녕하세요 hello こんにち", "utf8") 生成的
许多日语字体都有标准 ASCII 拉丁字符的特殊固定宽度变体,其宽度是字体的汉字/假名字符标准固定宽度的一半。这样,您只需为每个日语字符使用 2 个拉丁字符即可垂直排列拉丁语和日语文本。这被称为“半角
问题是我们是否有一个段落同时包含韩语(韩语)字符和罗马字符。 CSS 中有没有办法让韩文字符使用某种字体,而罗马字符使用另一种字体? 例如,我想对韩文使用 Noto Sans KR,对罗马字符使用 H
我正在尝试验证用户输入(在 Python 中)并查看是否使用了正确的语言,在本例中为韩语。让我们用韩语单词表示电子邮件地址:이메일 주소 我可以像这样检查每个字符: import unicodedat
我正在用 C 语言制作一个网络服务器。我需要从 url 获取参数以进行计算。问题是人们可以在一个字段(名称)中键入 unicode 字符。然而,当我的服务器收到那个请求时,这些 unicode 字
此前ios最新版微信有边写边译功能,输入的对话可以自动翻译成英语、韩语、日语等多种语言,不少安卓用户羡慕不已!不过就在昨天微信安卓8.0.18内测版的推出新增了边写边译功能,安卓的小伙伴们也终于可以
我在Windows 10中使用了Sublime Text 3。 从上面的截图中可以看到,韩文/中文/日文字符在“转到任何内容”文本输入,侧边栏和选项卡标题中均被打断。 有谁知道如何解决这个问题?我认为
我尝试在 python 中读取一些以“euc-kr”编码的韩语文本文件,但出现了一些错误。在检查 encodings 模块一段时间后,我了解到该模块以看似非常奇怪的方式对韩语字符进行编码。我举个例子
我正在尝试对 Hangul(韩语字符)进行颜色编码。每个“ block ”都会创建一个韩语音节。 Hangul 被分解为 Jamo(类似于英语中的字母)。当您键入韩语中的 jamo/字母时,它们通常会
我需要在包含标题的 2.000.000 个数据库行中进行搜索,例如歌曲。我需要一个能够快速提供结果、适用于 iOS 平台并支持 unicode 字符集的解决方案。我正在考虑使用 sqlite 的 FT
当我尝试通过 CkFtp2.java 客户端使用日语/韩语/阿拉伯语用户名/密码登录 FTP 服务器时,失败并显示消息“530 请先使用 USER 和 PASS 登录”。当我使用英文用户名/密码时,一
我遇到了 JPasswordField 组件尝试使用亚洲复合字符的不一致行为的问题。 我的代码是: final JCheckBox visiblePassword = new JCheckBo
我正在开发一个 vue 项目,这是一个小错误的修复。但这让我很难受。 我制作了 v-text-field 仅输入数字,看起来效果很好。 我只想输入数字,因此我使用 keydown 事件来使用 Pre
我是一名优秀的程序员,十分优秀!