我想获取数据形式的文本文件,并使用扫描仪获取数据形式的文本文件。
 这是个人资料保存模式

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;
}

09-10 16:48