java – 带有空行的缓冲读取器readLine()
|
我正在使用缓冲读取器从文本文件中一次抓取一行.我也试图使用跟踪整数从文本文件中获取行号.不幸的是BufferedReader正在跳过空行(只有/ n或回车). 有没有更好的方法来解决这个问题?会使用扫描仪吗? 示例代码: int lineNumber = 0;
while ((s = br.readLine()) != null) {
this.charSequence.add(s,++lineNumber);
}
解决方法我无法重现你声称BufferedReader跳过空行;它应该没有.以下是显示空行不仅仅被跳过的片段.
String text = "line1nnnline4";
BufferedReader br = new BufferedReader(new StringReader(text));
String line;
int lineNumber = 0;
while ((line = br.readLine()) != null) {
System.out.printf("%04d: %s%n",++lineNumber,line);
}
String text = "line1nnnline4";
LineNumberReader lnr = new LineNumberReader(new StringReader(text));
String line;
while ((line = lnr.readLine()) != null) {
System.out.printf("%04d: %s%n",lnr.getLineNumber(),line);
}
String text = "line1nnnline4";
Scanner sc = new Scanner(text);
int lineNumber = 0;
while (sc.hasNextLine()) {
System.out.printf("%04d: %s%n",sc.nextLine());
}
以上任何代码段的输出是: 0001: line1 0002: 0003: 0004: line4 相关问题 > How to get line number using scanner – LineNumberReader扫描仪组合! (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
