Ich brauche Matrix aus CSV-Datei mit OpenCSV-Bibliothek zu lesen. Die Funktion readAll() von OpenCSV gibt die Liste String [] zurück, während ich int [] [] brauche. Das ist, was ich habe:Konvertieren Sie die Liste <String[]> zu Array int [] []
cSVFileReader = new CSVReader(new FileReader(path), ',');
List<String[]> allRows = cSVFileReader.readAll();
for(String[] row : allRows){
for (int i = 0; i<cSVFileReader.getLinesRead(); i++){
String[] numbers = row[i].split(" ");
int [] ary = new int[numbers.length];
int j = 0;
for (String number : numbers){
ary[j++] = Integer.parseInt(number);
}
}
}
Und das ist Ausgabe:
Exception in thread "main" java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:504)
at java.lang.Integer.parseInt(Integer.java:527)
at strassenalgorithm.CSVFile.readM(CSVFile.java:37)
at strassenalgorithm.Main.main(Main.java:26)
Haben Sie versucht, Ihren Code zu debuggen? – luk2302
Scheint so, als parsen Sie eine leere Zeichenfolge in eine Ganzzahl. Sollte nicht schwer zu debuggen sein. –
Sie versuchen, einen leeren Raum zu einer Zahl zu analysieren. Überprüfen Sie zuerst, ob die Zeichenfolge leer oder leer ist. – Gatusko