Java Scanner null out out

时间:2014-01-11 19:26:15

标签: java java.util.scanner

我正在使用Scanner来读取文件文件通常具有的不同扩展名但文本文件内容相同的文件。 如果我在 text.txt 扩展名上使用Scanner,那么我确实会退出,但是当我在不同的扩展程序上执行相同的任务但具有相同的内容时,我无法获得任何输出所有

执行不同的测试后,发现问题是这些字符:“ ”

为什么不同扩展名的同一文件有不同的行为?

文件:

“1 line”
2nd line
3 rd line 

代码:

public static void main(String[] args)

{
    String path = "C:\\Users\\user\\Documents\\t1.RANDOM";

    File file = new File(path);
    StringBuilder sb = new StringBuilder();
    try {
        Scanner sc = new Scanner(file);
        while(sc.hasNextLine())
        {
            sb.append(sc.nextLine()+"\n");
        }
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }
    System.out.println(sb);
}

1 个答案:

答案 0 :(得分:1)

我可能认为Scanner正在进行不同的流读取,如果它没有识别已知的扩展名。 也许尝试使用以下构造函数:

Scanner sc = new Scanner(file, "UTF-8");