【问题标题】:Read cyrillics and non-cyrillics characters from file java从文件 java 中读取西里尔字母和非西里尔字母
【发布时间】:2013-09-13 21:27:19
【问题描述】:

我有一个包含西里尔字母和非西里尔字母的文件。但是,当我读取文件时,不会检索西里尔字符,而不会检索非西里尔字符。这是我正在使用的代码

private static String dirToPRocess = "D:\\stopwords_freq_v2.txt";

BufferedReader br = null;
    try {
        br = new BufferedReader(new InputStreamReader(new FileInputStream(
                dirToPRocess), "UTF-8"));
                    String line = br.readLine();
            while (line != null) {
                                System.out.println(line);
                                line = br.readLine();
                                              }
        } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
         }
             try {
        br.close();
         } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

【问题讨论】:

    标签: java string utf-8 cyrillic


    【解决方案1】:

    你在用eclipse吗?

    您可以尝试以下方法使其正常工作:

    使用字符编码 utf-8 保存您的 java 文件。

    如果您想将西里尔字母打印到控制台,我认为 eclipse 的属性中可能有一个设置可以做到这一点,但不是 100% 确定——根据我的经验,它应该默认打印西里尔字母。

    顺便说一句,您的 java 代码看起来不错。

    【讨论】:

    • 是的,我正在使用 Eclipse
    • @vikifor 您是否尝试进入文件属性并将字符编码设置为 utf-8?您可以右键单击该文件以访问属性,然后应该很容易找到
    • 我点击了属性并选中了选项 Default(inherited from container: UTF-8)(我没有选中这个按钮)。我还在 Windows > Preferences > General > Workspaces 中进行了更改,将“文本文件编码”设置为“Other : UTF-8”,但我仍然没有得到用西里尔字母编写的值。也许我应该在 Windows>Preferences 中更改后重新创建文件......
    • @vikifor 嗯,这是一个相关的帖子:stackoverflow.com/questions/2260325/…
    • 帖子对我没有帮助
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-13
    • 2021-06-10
    • 1970-01-01
    • 2011-09-09
    • 2017-10-27
    相关资源
    最近更新 更多