加载.txt文件我做错了什么?

时间:2013-02-12 12:45:15

标签: java string equals bufferedreader

try (BufferedReader br = new BufferedReader(new FileReader("Templates/format/test.txt")))
{

    String sCurrentLine;

    while ((sCurrentLine = br.readLine()) != null) {
        System.out.println(sCurrentLine.toString().trim());
        if(sCurrentLine.toString().trim().equalsIgnoreCase("Test2")){
            System.out.println("HI: "+sCurrentLine.toString().trim());
        }

    }

} catch (IOException e) {
    e.printStackTrace();
} 

我正在尝试获取.txt的内容但不是

if(sCurrentLine.toString().trim().equalsIgnoreCase("Test2")){
    System.out.println("HI: "+sCurrentLine.toString().trim());
}

if(sCurrentLine.toString().trim().equals("Test2")){
    System.out.println("HI: "+sCurrentLine.toString().trim());
}

作品。

这是txt的内容:

Text1
Text2
Text3

我也不明白为什么:System.out.println(sCurrentLine.toString().trim());导致控制台中出现以下输出。为什么我在开始时会得到休息和符号?

þÿ T e s t 1
T e s t 2
T e s t 3

感谢您帮助我!

1 个答案:

答案 0 :(得分:1)

将您的.txt文件转换为没有BOM的UTF-8。您可以使用Notepad ++或任何其他高级文本编辑器来完成此操作。