Hallo Leute,
bin noch Javaneuling. Hier erst mal der Code:
Java:
importjavax.swing.*;importjava.io.*;publicclassIntList{publicstaticintconvert(String line2){int newline =Integer.parseInt(line2);return newline;}publicstaticvoid main (String args[])throwsNumberFormatException,IOException{JFileChooser chooser =newJFileChooser();
chooser.showOpenDialog(chooser);String path = chooser.getSelectedFile().getPath();int[] array =newint[10];String line;int i =0;int minzahl =0;FileReader r =newFileReader(path);BufferedReader br =newBufferedReader(r);while((line = br.readLine())!=null){System.out.println(line);
array[i]=convert(line);
i++;}
br.close();
Und zwar möchte ich meinem array die einzelnen Zeilen aus einem externen Dokument hinzufügen. Nur das Problem ist diese Zeilen sind Integer und ich brauche diese Werte in einem Integer Array. Deswegen übergebe ich in einer Schleife die einzelnen Zeilen einer Funktion, die das konvertieren übernehmen soll. --> und genau da ist die Fehlermeldung. Wie löse ich das am besten?
Exception in thread "main" java.lang.NumberFormatException: For input string: ""
12
5
6
4
3
6
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:493)
at java.lang.Integer.parseInt(Integer.java:514)
at IntList.convert(IntList.java:8)
at IntList.main(IntList.java:31)
Das kommt heraus. Die Zahlen importiert das Programm richtig und gibt sie auch aus, aber ich schaffe es nicht sie einem Int Array zu übergeben ohne dass dieser Fehler kommt.
Stimmt, dass Array muss ich noch dynamisch machen, aber ich würde gerne das Programm vorher zum Laufen bringen.
mal ein System.out.println("|"+line+"|");
dann siehst du genau was in der datei steht... da ist eine leere zeile drinnen "" ist nicht null, it aber auch keine zahl...
irgendwie
if(line.lenght >0){
dann konvertieren....
}
|12|
|5|
|6|
|4|
|3|
|6|
||
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:493)
at java.lang.Integer.parseInt(Integer.java:514)
at IntList.convert(IntList.java:8)
at IntList.main(IntList.java:31)
Ok hab jetzt diesen Output... Liegt da I-wo der Fehler?