【发布时间】:2014-02-28 18:04:37
【问题描述】:
我正在尝试从文件中导入项目并将其放入 3 个不同的数组中,但我遇到了一些错误。这是我到目前为止的代码:
package project1;
import java.io.File;
import java.io.IOException;
import java.util.Scanner;
public class Project1 {
/**
* @param args the command line arguments
* @throws java.io.IOException
*/
public static void main(String[] args) throws IOException {
fillArray();
}
public static void fillArray() throws IOException {
Scanner teamList = new Scanner(new File("baseball_teams.txt"));
String[] teamName = new String[35];
int[] teamRank = new int[35];
double[] teamWinPercentage = new double[35];
int i = 0;
while (teamList.hasNext()) {
teamRank[i] = teamList.nextInt();
teamName[i] = teamList.next();
teamWinPercentage[i] = teamList.nextDouble();
i++;
}
}
}
当我尝试运行程序时出现此错误:
run:
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.nextDouble(Scanner.java:2456)
at project1.Project1.fillArray(Project1.java:36)
at project1.Project1.main(Project1.java:23)
Java Result: 1
BUILD SUCCESSFUL (total time: 0 seconds)
这是文件的内容:
1
Boston
0.605
2
St.Louis
0.596
3
Oakland
0.587
4
Atlanta
0.584
5
Pittsburgh
0.577
6
Detroit
0.567
7
Cleveland
0.564
8
Dodgers
0.564
9
Tampa Bay
0.559
10
Texas
0.558
11
Cincinnati
0.552
12
Washington
0.531
13
Kansas City
0.531
14
Baltimore
0.525
15
Yankees
0.525
16
Arizona
0.500
17
Angels
0.481
18
San Diego
0.469
19
Giants
0.469
20
Mets
0.457
21
Colorado
0.457
22
Milwaukee
0.457
23
Toronto
0.457
24
Philadelphia
0.451
25
Seattle
0.438
26
Minnesota
0.407
27
Cubs
0.407
28
Sox
0.389 29
Miami
0.383
30
Houston
0.315
如果有任何提示,我将不胜感激!
谢谢!
【问题讨论】:
-
您也可以显示您的文件内容吗?文件中似乎有问题。检查InputMismatchException
-
当文件包含其他内容时,您似乎正在尝试读取双精度数。您是否尝试过调试您的代码或只是添加打印语句以找出它试图读取的内容?
-
@user3052882 你能告诉我们你的文件内容吗
-
用文件内容更新了问题。
标签: java file import multidimensional-array