hi,
hab hier eine Methode die aus einer textfile einlesen soll
das 1.Steuerzeichen in der Zeile bestimmt was getan werden soll
+ = add Auftrag
- = remove Auftrag
c = change priority (auftragnummer)
hier ist mein JAVACode:
ich lese folgende Textdatei ein:
ich bekomme nur diese merkwürdige Ausgabe über BlueJ in der Konsole:
For input string: " BLABLA"
was ist da los???
hab hier eine Methode die aus einer textfile einlesen soll
das 1.Steuerzeichen in der Zeile bestimmt was getan werden soll
+ = add Auftrag
- = remove Auftrag
c = change priority (auftragnummer)
hier ist mein JAVACode:
Java:
try{
File eingabe = new File(dateipfad);
if (eingabe == null) {throw new FileNotFoundException();}
else if (!eingabe.canRead() || !eingabe.exists()) {throw new KeineLeserechteException();}
else if (!eingabe.isFile()) {throw new KeineNormaleDateiException();}
else
{
reader = new LineNumberReader(new BufferedReader(new FileReader(eingabe)));
while((line = reader.readLine())!= null) {
if (av1.stackVoll()) {throw new StackIstVollException();}
else {
//do{
//line= reader.readLine();
zeile = reader.getLineNumber();
if (line.startsWith("-")){
System.out.println(zeile + ". Zeile: (-) ---> loeschen");
av1.shiftRemove();
}
else if (line.startsWith("+")){
//int aufnr = auftragsnummerLesen(reader,line);
String prioritaetsnummer= line.substring(1,line.indexOf("\t"));
int prnr =Integer.parseInt(prioritaetsnummer);
int lasttab = line.lastIndexOf("\t");
String auftragsnummer =line.substring(line.indexOf("\t"),line.lastIndexOf("\t"));
int aufnr =Integer.parseInt(auftragsnummer);
//int aufnr= Integer.valueOf(auftragsnummer).intValue();
//String firma = auftragsgeberLesen(reader,line);
String firma = line.substring(line.lastIndexOf("\t"));
//av1.erstelleDatei(aufnr,firma);
Auftrag obj = new Auftrag(prnr,aufnr,firma);
System.out.print(zeile+". Zeile: hinzufuegen-->");
System.out.print(obj.toString());
av1.insert(obj);
}
else if (line.startsWith("c")) {
//int aufnr = auftragsnummerLesen(reader,line);
String prioritaetsnummer= line.substring(1,line.indexOf("\t"));
int prnr =Integer.parseInt(prioritaetsnummer);
//int zweittab =line.indexOf("\tab",line.lastIndexOf(prioritaetsnummer+"\t"));
int lasttab = line.lastIndexOf("\t");
//String auftragsnummer =line.substring(line.lastIndexOf(prioritaetsnummer+"\t"),zweittab);
String auftragsnummer = line.substring(lasttab);
int aufnr =Integer.parseInt(auftragsnummer);
//int aufnr= Integer.valueOf(auftragsnummer).intValue();
//String firma = auftragsgeberLesen(reader,line);
//String firma = line.substring(lasttab);
//av1.erstelleDatei(aufnr,firma);
//Auftrag obj = new Auftrag(prnr,aufnr,firma);
av1.changePriority(prnr,aufnr,av1);
int i= av1.findeAuftragsnummer(aufnr);
System.out.print(zeile+". Zeile: Prioritaet aendern-->");
System.out.print(av1.sucheDatei(i));
//System.out.print(obj.toString());
//av1.insert(obj);
}
else{
System.out.println ("Die "+zeile+". Zeile --> " +line + " beginnt nicht mit (c,+,-) " +
"und konnte nicht ausgelesen werden");
}
System.out.println("\nBisherige Elemente im Stack: \n" + av1.toString());
//line= reader.readLine();
}
}
}
//while( reader.readLine() != null);}
reader.close();
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
}
ich lese folgende Textdatei ein:
Java:
+1234 8888 BLABLA
+4325 9999 Test
+12 1000 GAMESTAR
-
c6666 1000
+5555 3920 PCGAMES
+1 3939 KINO
-
-
ich bekomme nur diese merkwürdige Ausgabe über BlueJ in der Konsole:
For input string: " BLABLA"
was ist da los???
Zuletzt bearbeitet: