我想获取数据形式的文本文件,并使用扫描仪获取数据形式的文本文件。
这是个人资料保存模式
name
status
friend
friend
.
.
(Blank line)
空白线在每个配置文件中是分开的(朋友会循环播放直到下一行是空白线)
john
happy
james
james
sad
john
我编码以获得这样的文件形式文本
try{
Scanner fileIn = new Scanner(new FileReader("testread.txt"));
while(fileIn.hasNextLine()){
String line = fileIn.nextLine();
String linename = fileIn.nextLine();
String statusline = fileIn.nextLine();
println("name "+linename);
println("status "+statusline);
while(/*I asked at this*/)){
String friendName = fileIn.nextLine();
println("friend "+friendName);
}
}
}catch(IOException e){
println("Can't open file");
}
我应该使用什么条件来检测配置文件之间的空白行?
最佳答案
您可以实现以下自定义函数,如果该函数不为空,它将返回nextLine
。
public static String skipEmptyLines(Scanner fileIn) {
String line = "";
while (fileIn.hasNext()) {
if (!(line = fileIn.nextLine()).isEmpty()) {
return line;
}
}
return null;
}