java.util.NoSuchElementException:未找到行

通过扫描程序读取文件时,程序中出现运行时异常。

java.util.NoSuchElementException: No line found     

at java.util.Scanner.nextLine(Unknown Source)

at Day1.ReadFile.read(ReadFile.java:49)

at Day1.ParseTree.main(ParseTree.java:17)

我的代码是:

while((str=sc.nextLine())!=null){

i=0;

if(str.equals("Locations"))

{

size=4;

t=3;

str=sc.nextLine();

str=sc.nextLine();

}

if(str.equals("Professions"))

{

size=3;

t=2;

str=sc.nextLine();

str=sc.nextLine();

}

if(str.equals("Individuals"))

{

size=4;

t=4;

str=sc.nextLine();

str=sc.nextLine();

}

int j=0;

String loc[]=new String[size];

while(j<size){

beg=0;

end=str.indexOf(',');

if(end!=-1){

tmp=str.substring(beg, end);

beg=end+2;

}

if(end==-1)

{

tmp=str.substring(beg);

}

if(beg<str.length())

str=str.substring(beg);

loc[i]=tmp;

i++;

if(i==size ){

if(t==3)

{

location.add(loc);

}

if(t==2)

{

profession.add(loc);

}

if(t==4)

{

individual.add(loc);

}

i=0;

}

j++;

System.out.print("\n");

}

回答:

Scanner你需要检查,如果存在与下一行hasNextLine()

所以循环变成

while(sc.hasNextLine()){

str=sc.nextLine();

//...

}

是读者返回null EOF

当然在这段代码中,这取决于输入的格式是否正确

以上是 java.util.NoSuchElementException:未找到行 的全部内容, 来源链接: utcz.com/qa/410820.html

回到顶部