我背负着一堆文件,这些文件的名字乱七八糟,面目全非。尽管我或多或少知道这些名称最初包含什么,但手动修复它们会带来很多麻烦,所以我正在寻找一种自动执行此操作的方法。
这些汉字怎么可能变成这样:
### original => garbled
### UTF-8 UTF-8
### UCS-2 UCS-2
雨中 => ╙ъ╓╨
e9 9b a8 e4 b8 ad e2 95 99 d1 8a e2 95 93 e2 95 a8
96e8 4e2d 2559 044a 2553 2568
照片 => ╒╒╞м
e7 85 a7 e7 89 87 e2 95 92 e2 95 92 e2 95 9e d0 bc
7167 7247 2552 2552 255e 043c
女人 => ┼о╚╦
e5 a5 b3 e4 ba ba e2 94 bc d0 be e2 95 9a e2 95 a6
5973 4eba 253c 043e 255a 2566
童心 => ═п╨─
e7 ab a5 e5 bf 83 e2 95 90 d0 bf e2 95 a8 e2 94 80
7ae5 5fc3 2550 043f 2568 2500
绿肥红瘦 => ┬╠╖╩║ь╩▌
e7 bb bf e8 82 a5 e7 ba a2 e7 98 a6 e2 94 ac e2 95 a0 e2 95 96 e2 95 a9 e2 95 91 d1 8c e2 95 a9 e2 96 8c
7eff 80a5 7ea2 7626 252c 2560 2556 2569 2551 044c 2569 258c
我以前见过类似的事情发生,例如当一个 UTF-8 编码的序列被错误地解释为单字节(例如 Latin-1 或 CP1251)然后再次转换为 UTF-8 时,但这似乎并没有在这里就是这样。
实际上并不能保证原始编码是 UTF-8,它可能是 GB 或中国使用的其他一些遗留编码。
有任何想法吗?