单个字节丢失导致的gbk--_utf8出错的研究
差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
单个字节丢失导致的gbk--_utf8出错的研究 [2023/12/05 14:59] – MNBVC项目组 | 单个字节丢失导致的gbk--_utf8出错的研究 [2023/12/05 15:01] (当前版本) – MNBVC项目组 | ||
---|---|---|---|
行 1: | 行 1: | ||
经过长时间的调查研究,初步确定部分文本在进行 GBK--> | 经过长时间的调查研究,初步确定部分文本在进行 GBK--> | ||
- | ===== 案例1: | + | ==== 案例1: ==== |
以 20230101/ | 以 20230101/ | ||
行 18: | 行 18: | ||
</ | </ | ||
- | 假如我们把删掉 '' | + | 假如我们把删掉 '' |
- | ==== 乱码原因: ==== | + | ==== 乱码原因的两种情况: ==== |
- | + | ||
- | **乱码的原因分两种情况:** | + | |
- 程序主动跳过出错的单字节,把单字节前后的内容拼起来作为一个新的双字节GBK字符,如果恰好新组成的双字节可以被转换成一个汉字(但已失去原意),程序会持续将错就错转换下去,直到下一个双字节无法识别抛出错误为止 | - 程序主动跳过出错的单字节,把单字节前后的内容拼起来作为一个新的双字节GBK字符,如果恰好新组成的双字节可以被转换成一个汉字(但已失去原意),程序会持续将错就错转换下去,直到下一个双字节无法识别抛出错误为止 | ||
行 37: | 行 35: | ||
- | 我们可以很清楚的看到这段文本因为errors=" | + | |
+ | 我们可以很清楚的看到这段文本因为 | ||
为什么很多GBK文本出现一次或者多次单个字节丢失的情况我们还不得而知,不过基于以上的研究,我们可以设计一个新的编码识别转换的方法,就是想办法正确的标记单个字节丢失的真正位置,再交由人工进行识别处理,并借助其他自动化或者AI工具 ,补全这些字符。 | 为什么很多GBK文本出现一次或者多次单个字节丢失的情况我们还不得而知,不过基于以上的研究,我们可以设计一个新的编码识别转换的方法,就是想办法正确的标记单个字节丢失的真正位置,再交由人工进行识别处理,并借助其他自动化或者AI工具 ,补全这些字符。 |
单个字节丢失导致的gbk--_utf8出错的研究.1701759563.txt.gz · 最后更改: 2023/12/05 14:59 由 MNBVC项目组