【发布时间】:2014-05-11 02:39:23
【问题描述】:
所以我昨天运行了这个程序,但不小心在 netbeans IDE 7.4 中运行了调试器控制台,此后程序停止工作。我不知道它在我的代码中发生了什么变化。
这是错误:
Petname:
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:909)
at java.util.Scanner.next(Scanner.java:1530)
at java.util.Scanner.nextInt(Scanner.java:2160)
at java.util.Scanner.nextInt(Scanner.java:2119)
at veterinarian.Veterinarian.main(Veterinarian.java:107)
Java Result: 1
BUILD SUCCESSFUL (total time: 0 seconds)
我添加了一个简单的 println 语句来查看存储的内容及其 null 即宠物名。
代码是:
public static void main(String[] args) {
boolean pick = false;
//***************************add file*******************************************
File file = new File("VetList.txt");
//*********************declare ojbects******************************************
try{
Scanner read = new Scanner(file);
int fix = read.nextInt();
do{
for(int x = 0; x < fix; x++){
String petname = read.nextLine();
System.out.println("Petname: " + petname);
int birthday = read.nextInt();
String species = read.next();
double bill = read.nextDouble();
String owner = read.next();
Veterinarian work = new Veterinarian(petname, birthday, species, bill, owner);
Veterinarian.Vet.add(work);
}
}
while(read.hasNextLine() == pick);
}
catch(FileNotFoundException FNF){
System.err.format("File not found");}
txt文件为:
8
hopper
2003
kangaroo
555
Melody_harper
ketty
2009
cat
44
Kitty_katz
Spot
2005
Dog
333
Dottie_Marks
Johnny
2008
cat
111
Misty_waters
Stripper
2011
sckunk
432
Oddie_sweet
Edward
1995
Horse
630
Frieda_gelding
Casper
1998
snake
88
Bo_constricter
boots
2005
Horse
987
Ida_Shuman
我无法更改文件格式以更好地阅读。
请注意,我已尝试将 java 文件本身恢复到此事件之前的前一个时间,但它仍然无法运行并给出相同的错误。我还重新安装了 Netbeans。
【问题讨论】:
-
第107行是哪一行?
-
顺便说一下,这个问题与IDE完全无关。看起来您更改了文件中的某些内容,这就是为什么它不再起作用。
-
我在生日时收到错误
-
无论如何,您的文件中没有新的空行吗?
-
可能在最后,但我走到最后并删除了所有空白空间
标签: java debugging text java.util.scanner