mat*_*cey 4 java string utf-8 character-encoding
我正在做一些关于常见爬网数据集(大型网络爬网)的工作,我一直看到一个奇怪的编码模式,我无法解决如何处理.
我一次又一次看到的模式类似于我猜测的字节序列.50 6f 6b e9 6d 6f 6ePokémon
现在编码模式是不是我的最强点,但我不知道任何编码它是合法代表的é是公正e9.
这有点像[UTF-16] [1] fe ff 00 50 00 6f 00 6b 00 e9 00 6d 00 6f 00 6e
它绝对不是UTF-8 50 6f 6b c3 a9 6d 6f 6e
所以我只是用Java的方法将这些字节解码成一个字符串,一个库是理想的.
new String(bytes)理所当然地不起作用并正确地将其转换e9为替代品ef bf bd(又名可怕的 )
有关如何处理这些的任何想法?
更新
我最终使用了Apache Tika [2]中提供的字符集编码检测器.效果很好.
[1] http://www.fileformat.info/info/unicode/char/e9/index.htm
[2] http://tika.apache.org/0.8/api/org/apache/tika/parser/txt/CharsetDetector.html
这是ISO-8859-1或Windows-1252,后者本质上是前者的超集.使用new String(bytes, "ISO-8859-1")或new String(bytes, "Windows-1252").
| 归档时间: |
|
| 查看次数: |
1689 次 |
| 最近记录: |