这个文件是如何编码的?

时间:2012-06-03 14:12:27

标签: encoding character-encoding

我从客户处获得了Excel生成的.csv文件。我的软件必须在java中打开并解析它。我使用universalchardet但它没有检测到文件的前1,000个字节的编码。

在这1,000个第一个字节中,有一个序列应该被读作Boîte,但我找不到用于将此文件转换为java中的UTF-8字符串的正确编码。

在文件中,Boîte编码为42,6F,94,74,65(使用十六进制编辑器读取)。 Bote使用标准拉丁编码,每个字符1个字节。 î也只在一个字节0x94上编码。

我不知道如何猜测这个字符集,我的在线搜索都没有产生相关结果。

我还尝试在该文件中使用file

$ file export.csv
/Users/bicou/Desktop/export.csv: Non-ISO extended-ASCII text, with CR line terminators

但是,我查看了扩展ASCII字符集,值0x94代表ö

您是否有其他想法来猜测该文件的编码?

1 个答案:

答案 0 :(得分:3)

这是Mac OS Roman编码。使用以下java代码时,文本已正确解码:

InputStreamReader isr = new InputStreamReader(new FileInputStream(targetFileName), "MacRoman");

我不知道如何删除我自己的问题。我认为它不再有用......