java - 使用java读取具有utf-8编码的文本文件

标签 java netbeans file-io encoding

我在读取 utf-8 编码的文本文件时遇到问题 我在 netbeans 7.2.1 平台上使用 java

我已经将 java 项目配置为处理 UTF-8 javaproject==>右键==>properties==>source==>UTF-8

但仍然得到未知字符输出: ��������������������

代码:

File fileDirs = new File("C:\\file.txt");

BufferedReader in = new BufferedReader(
new InputStreamReader(new FileInputStream(fileDirs), "UTF-8"));

String str;

while ((str = in.readLine()) != null) {
    System.out.println(str);
}

还有其他想法吗?

谢谢

最佳答案

使用

    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.io.UnsupportedEncodingException;     
    public class test {
    public static void main(String[] args){

    try {
        File fileDir = new File("PATH_TO_FILE");

        BufferedReader in = new BufferedReader(
           new InputStreamReader(new FileInputStream(fileDir), "UTF-8"));

        String str;

        while ((str = in.readLine()) != null) {
            System.out.println(str);
        }

                in.close();
        } 
        catch (UnsupportedEncodingException e) 
        {
            System.out.println(e.getMessage());
        } 
        catch (IOException e) 
        {
            System.out.println(e.getMessage());
        }
        catch (Exception e)
        {
            System.out.println(e.getMessage());
        }
    }
}

您需要将 UTF-8 放在引号中

关于java - 使用java读取具有utf-8编码的文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14918188/

相关文章:

java - 如何获取集合中的随机范围数

java - 如何根据用户输入触发正确的 JTable 事件以及如何计算总数?

java - netbeans 中的单选按钮

c++ - 为什么我必须按两次 Enter 才能使用 Netbeans 7.3.1 和最新的 MinGW 工具集执行 cin 语句?

PHP标准输入?

c++ - 将文件中的单词放入 HashMap (c++)

java - 复杂的 JUnit 测试用例

java - 使用 websphere 在哪里获取部署的服务和生成的 wsdl

javascript - 在 Meteor [1.0.0] 中写入服务器上的文件(每次构建都不会丢失文件)

java - 如何在文本 block 中处理意图(Java 13)