MIDI文件内含日文显示乱码无法正确解码,如何识别其正确编码?
问题根源
你遇到的是典型的文本双重编码错误:原始MIDI内的日文字符为Shift-JIS编码,被读取程序错误地以Latin-1(ISO-8859-1)编码解析后转成了UTF-8格式,才会出现解码结果中夹杂大量ツ字符的情况。
修复方法
按照以下两步操作即可得到正确文本:
- 将当前的UTF-8乱码文本,按Latin-1编码重新编码为二进制字节流,即可剥离所有多余的
0xc2、0xc3前缀,拿到原始的Shift-JIS编码字节 - 将得到的二进制字节流用
SHIFT_JISX0213编码解码,即可得到可读的日文字符
你提供的两段乱码解码结果
- 第一段:
パーカッション (マップ1) ドラムポート
对应含义:打击乐(映射1) 鼓端口 - 第二段:
ギター (エレキギター) F.O
对应含义:吉他(电吉他) F.O
内容的提问来源于stack exchange,提问作者emclain
相关产品推荐
相关产品推荐

