我有一个.txt文件,它有一些数字,例如
0,3,4,... 9
.......
1,2,5,... 6
这是一个数独设计,我想将其放入数组中
Scanner in = new Scanner (new File ("sudoku1.txt")); //here I specified the target of the file like C:\\...
for(int i=0; i<9; i++){
for(int j=0; j<9; j++){
String n = in.next();
grid [i][j] = Integer.parseInt(n);
}
}
System.out.println(grid);
当我尝试查看该数组时,由于文本文件中的“”,它给出了一个错误,如果我删除逗号并放置空格而不是逗号,它可以工作,但即使它只显示一行,它也可以无法正常工作。
答案 0 :(得分:2)
执行以下操作:
Scanner in = new Scanner (new File ("sudoku1.txt"));
for(int i=0; i<9 && in.hasNextLine(); i++){
String []nums = in.nextLine().split(",");
for(int j=0; j<nums.length; j++){
String n = nums[j].trim();
grid [i][j] = Integer.parseInt(n);
}
}
System.out.println(Arrays.deepToString(grid));
答案 1 :(得分:2)
扫描仪可以使用其他定界符。默认值与空格匹配。
这里是一个例子。
String myDelimiterGroup = "[,\\r\\n]"; // a pattern definition
Scanner scanner = new Scanner(yourFile).useDelimiter(myDelimiterGroup);
希望有帮助。