Java 将文本文件放入二维数组
我正在尝试将一个如下所示的文本文件存储到二维数组中Java 将文本文件放入二维数组,java,arrays,multidimensional-array,Java,Arrays,Multidimensional Array,我正在尝试将一个如下所示的文本文件存储到二维数组中 24 7 1 6 7 15 13 17 9 23 10 21 13 19 这是我的代码,我必须存储它。没有语法错误,但我似乎无法将其存储到数组中。我只需要找出如何简单地将其存储到我的数组中 FileInputStream fStream = new FileInputStream(file); BufferedReader input = new BufferedReader(new InputStreamRe
24
7
1 6
7 15
13 17
9 23
10 21
13 19
这是我的代码,我必须存储它。没有语法错误,但我似乎无法将其存储到数组中。我只需要找出如何简单地将其存储到我的数组中
FileInputStream fStream = new FileInputStream(file);
BufferedReader input = new BufferedReader(new InputStreamReader(fStream));
Scanner src = new Scanner(input);
ArrayList<Integer> lines = new ArrayList<Integer>();
src.useDelimiter(" ");
while(src.hasNextInt()) {
lines.add(src.nextInt());
}
int[][] fileArray = new int[lines.size()][];
lines.toArray(fileArray);
FileInputStream fStream=新的FileInputStream(文件);
BufferedReader输入=新的BufferedReader(新的InputStreamReader(fStream));
扫描仪src=新扫描仪(输入);
ArrayList行=新的ArrayList();
src.useDelimiter(“”);
while(src.hasNextInt()){
add(src.nextInt());
}
int[][]fileArray=new int[lines.size()][];
lines.toArray(文件数组);
-谢谢,迈克,试试这个
FileInputStream fStream = new FileInputStream(file);
BufferedReader input = new BufferedReader(new InputStreamReader(fStream));
Scanner src = new Scanner(input);
ArrayList<ArrayList<Integer>> board = new ArrayList<>();
while(src.hasNextLine())
{
String[] line = src.nextLine().split("\\s+");
board.add(new ArrayList<Integer>());
for(String num : line)
{
if(num.matches("\\d+"))
board.get(board.size() - 1).add(Integer.parseInt(num));
}
}
for(int i = 0; i < board.size(); i++)
{
for(int j = 0; j < board.get(i).size(); j++)
System.out.print(board.get(i).get(j) + " ");
System.out.println();
}
FileInputStream fStream=新的FileInputStream(文件);
BufferedReader输入=新的BufferedReader(新的InputStreamReader(fStream));
扫描仪src=新扫描仪(输入);
ArrayList board=新的ArrayList();
while(src.hasNextLine())
{
String[]line=src.nextLine().split(\\s+);
添加(新的ArrayList());
for(字符串编号:行)
{
如果(num.matches(\\d+))
get(board.size()-1).add(Integer.parseInt(num));
}
}
对于(int i=0;i
改变一下逻辑怎么样。将每一行作为字符串读取,使用“
将值转换为整数并添加到数组中进行拆分。非常感谢!这帮了我很大的忙。我唯一需要修改的是\\d到\\d+,因为这些数字使用了多个更好的逻辑