我似乎无法弄清楚问题。这是我正在尝试打开并阅读.txt文件的内容。如果文件中的某行数据出现问题,请跳过该文件并继续阅读文件
我找不到跳过不包含有效值的行的方法并继续读取该文件。这是我的代码。
int theValue = 0;
try {
Scanner input = new Scanner(file);
while (input.hasNextLine()) {
String value = input.next();
theValue = Integer.parseInt(value);
}
input.close();
} catch (IllegalArgumentException error) {
System.out.println(error.getMessage());
}
}
提前感谢所有帮助。
答案 0 :(得分:0)
好吧,也许不是最好的主意,但一个简单的解决方案就是将parseInt封装在try / catch中:
int theValue = 0;
try {
Scanner input = new Scanner(file);
while (input.hasNextLine()) {
String value = input.next();
try{
theValue = Integer.parseInt(value);
}catch (Exception e){
//Just ignore it and carry on.
}
}
input.close();
} catch (IllegalArgumentException error) {
System.out.println(error.getMessage());
}
}