我一直在研究如何做到这一点并且变得有点困惑,我到目前为止已经尝试使用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();
}
}
答案 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。