我有一个像这样的bufferedreader:
BufferedReader br = BufferedReader(new FileReader(("Output/pointsSorted.txt")));
String line;
while((line = br.readLine()) != null){
System.out.println(br.readLine());
}
br.close();
}
但它只读取每一行,我不明白为什么。
这是读者阅读的文件:
bendsan: 1000
gotr_gotey: 87
lordelain: 87
nightbot: 87
vellsain: 87
r3l10n: 86
skalrayi: 85
brom13: 84
llecrezzef: 84
cloudinger: 74
littleangelswing: 60
n3belmacht: 43
mrscandy_: 32
sluckzz: 31
elboy717: 30
assassinenfan: 18
msurai: 18
woischdesdu: 16
daspaddy: 14
sirfullmetal: 10
daranun: 1
这是输出:
gotr_gotey: 87
nightbot: 87
r3l10n: 86
brom13: 84
cloudinger: 74
n3belmacht: 43
sluckzz: 31
assassinenfan: 18
woischdesdu: 16
sirfullmetal: 10
你可以看到每一秒都被跳过。
答案 0 :(得分:0)
因为您正在打印br.readLine()
而不是line
,所以每次循环迭代读取2行(但只打印一行)。
答案 1 :(得分:0)
WriteStartElement
第1行从文件中读取一行并将其存储在WriteEndElement
中。然后第2行从文件中读取一个新行并输出它。所以第一行读入XmlReader
,然后打印出第二行,然后将第三行读入XmlWriter
,然后打印出第四行,依此类推。
你可能想要这个:
XmlSerializer
答案 2 :(得分:0)
你正在调用BufferedReader br = BufferedReader(new FileReader(("Output/pointsSorted.txt")));
String line;
while((line = br.readLine()) != null){ // line 1
System.out.println(br.readLine()); // line 2
}
br.close();
}
两次 - 一次进入line
条件(然后忽略结果),一次进入其体内。只需删除其中一个电话,您就可以了。 E.g:
line