Java解析文本文件并保留换行符?

时间:2011-06-18 01:19:47

标签: java regex parsing file

我一直在研究如何做到这一点并且变得有点困惑,我到目前为止已经尝试使用Scanner,但这似乎没有保留换行符,我无法弄清楚如何确定一条线是否是越线。如果有人有任何建议,我将不胜感激。我一直在使用Scanner类,但我不确定如何检查该行是否为新行。谢谢

    for (String fileName : f.list()) {

            fileCount++;

            Scanner sc = new Scanner(new File(f, fileName));
            int count = 0;
            String outputFileText = "";

            //System.out.println(fileCount);

            String text="";
            while (sc.hasNext()) {

                String line = sc.nextLine();
            }
}

3 个答案:

答案 0 :(得分:2)

如果您只是想阅读该文件,我建议改为使用LineNumberReader

LineNumberReader lnr = new LineNumberReader(new FileReader(f));
String line = "";
while(line != null){
    line = lnr.readLine();
    if(line==null){break;}
    /* do stuff */
}

答案 1 :(得分:1)

Java的Scanner类已经将它拆分成行,即使该行是一个空字符串。您只需再次扫描这些行以获取您的值:

Scanner lineScanner;
while(sc.hasNext())
{
    String nextInputLine = sc.nextLine();

    lineScanner = new Scanner(nextInputLine);

    while(lineScanner.hasNext())
    {
        //read the values
    }
}

答案 2 :(得分:0)

您可能想要使用BufferedReader#readLine