我正在尝试从文件中获取2D数组并进入我的程序。我不确定2D数组的大小是多少,必须按降序排序。如果我在我的代码中输入一个示例数组,那么for语句就可以完美地执行。我最大的挫败感是从另一个文件中获取一个2D数组并让我的代码运行并执行它。任何人都可以帮我这个..
代码:
public class Project2 {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(new File("prog2.txt"));
int number = 0;
while (sc.hasNext()) {
sc.nextLine();
number++;
}
System.out.println(number);
这就是我需要的文件。这会显示有的行数。
代码:
for (int i = 0; i < hours.length; i++) {
int sum = totalHours(hours, i);
System.out.println("Employee " + i + ": " + sum);
}
}
这是for语句,只要我手动输入2D数组的数字,就能很好地执行。
我正在尝试从文件中获取数字来运行此for语句。我对如何做到完全感到困惑,而且我已经坚持了好几个小时了。非常感谢你们所有的帮助!
答案 0 :(得分:0)
希望这可以帮助你。
java文件
public class ReadFile {
public static void main(String[] args) throws FileNotFoundException {
Scanner sc = new Scanner(new File("./assets/prog2.txt"));
int[][] storedArray = new int[3][3];
int i = 0, j = 0;
while (sc.hasNext()) {
String line = sc.nextLine();
String[] rows = line.split(":");
for (String row : rows) {
String[] cells = row.split("~");
j = 0;
for (String cell : cells) {
// System.out.println(cell);
storedArray[i][j] = Integer.parseInt(cell);
j++;
}
i++;
}
for (int[] p : storedArray) {
System.out.println(Arrays.toString(p));
}
}
}
}
<强> prog2.txt 强>
1~2~3:4~5~6:7~8~9
项目目录structire
project
|---src--javafile
|
|---assets---prog2.txt
<强>假设强>。
<强>输出强>
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]