У меня есть файл MatrixToCsv.csv следующим образом:
67,85,20,87,78,46,66;
33,66,88,24,90,28,19;
76,22,46,33,10,16,73;
16,79,28,98,67,49,62;
85,75,12,18,92,58,80;
59,89,16,10,52,67,35;
54,66,62,53,39,91,37;
И я хочу сохранить его в массив, но только целые числа, поэтому я написал это:
public static void main(String[] args) throws IOException {
Scanner input = new Scanner (new File("MatrixToCsv.csv"));
int rows = 7;
int columns = 7;
int[][] array = new int[rows][columns];
input.useDelimiter(Pattern.compile(",|;|(\\n)"));
for(int i = 0; i < rows; ++i)
{
for(int j = 0; j < columns; ++j)
{
if(input.hasNextInt())
{
array[i][j] = input.nextInt();
}
}
}
for(int i = 0; i < rows; i++) {
for (int j = 0; j < array.length; j++) {
System.out.print(array[i][j]+ " ");
}
System.out.println();
}
input.close();
}
И вывод:
67 85 20 87 78 46 66
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
И мне интересно, почему он читает только одну строку из текста.Благодарю.Q.