2

我在阅读希伯来语中的 UTF-8 编码文本文件时遇到了麻烦。我成功阅读了所有希伯来语字符,除了两个字母 = 'מ' 和 'א'。

这是我的阅读方式:

    FileInputStream fstream = new FileInputStream(SCHOOLS_LIST_PATH);
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String strLine;

// Read File Line By Line
while ((strLine = br.readLine()) != null) {

                if(strLine.contains("zevel")) {

                    continue;
                }

                schools.add(getSchoolFromLine(strLine));
}

任何的想法?

谢谢,托默

4

1 回答 1

4

您在没有指定编码的情况下使用 InputStreamReader,因此它使用您平台的默认值 - 这很可能不是UTF-8。

尝试:

new InputStreamReader(in, "UTF-8")

请注意,您在DataInputStream这里使用的原因并不明显......只需InputStreamReaderFileInputStream.

于 2011-05-09T11:29:59.177 回答