【发布时间】:2013-07-28 03:42:34
【问题描述】:
我不断收到类似这样的错误,我不知道为什么:
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:840)
at java.util.Scanner.next(Scanner.java:1461)
at java.util.Scanner.nextInt(Scanner.java:2091)
at java.util.Scanner.nextInt(Scanner.java:2050)
at Assignment20.main(Assignment20.java:17)
这是我的代码
import java.util.Scanner;
import java.io.File;
public class Assignment20{
public static void main(String[] args) throws Exception{
File myFile = new File("scores.txt");
Scanner input = new Scanner(myFile);
while (input.hasNext()) {
String firstName = input.next();
String mi = input.next();
String lastName = input.next();
int score = input.nextInt();
System.out.println(
firstName + " " + mi + " " + lastName + " " + score);
}
input.close();
}
}
我试图让它读取的文本文件看起来像这样
哈利波特,72
罗恩·韦斯莱,68 岁
赫敏格兰杰,98
阿不思·邓布利多,90
纳威隆巴顿,75
卢娜·洛夫古德,86 岁
德拉科马尔福,64
赵昌,88 岁
金妮·韦斯莱,78 岁
汤姆·里德尔,92
我需要做什么来解决这个问题?
编辑:我更改了文本文件,但它仍然无法正常工作,我得到了同样的错误。有人可以告诉我固定的代码吗?我不明白我必须做什么。
【问题讨论】:
-
提示:尝试打印出 firstName、mi 和 lastName(在尝试读取 int 之前),看看会得到什么
-
想一想,看看你的文本文件的结构。它是否与您要在代码中检索的数据匹配?!
标签: java