PsychedelicSpark
Grünschnabel
Hallo Zusammen
Ich habe schon in hunderten von Foren nach einer Lösung gesucht, jedoch ohne Erfolg. Daher habe ich mich aus Verzweiflung hier angemeldet, in der Hoffnung, dass mir jemand bei meinem Problem helfen kann.
Grundsätzliches zu meinem Programm:
Es handelt sich hierbei um ein Programm, welches Notizen erstellen, anzeigen, bearbeiten, löschen und abspeichern kann. Das Ganze als GUI mit Java Swing.
Beim speichern der Notizen werden die Werte "Priorität", "Titel" und "Inhalt" aus JTextAreas ausgelesen und zeilenweise (in dieser Reihenfolge) in eine .txt Datei rein geschrieben.
Beim erneuten Start des Programms sollen alle Notizen, die in die .txt geschrieben wurden, wieder schön in einer JList(über ein DefaultListModel) angezeigt werden.
Die Notizen werden in einem Vector gespeichert.
Nun zu meinem Problem:
Ich lese die Daten zeilenweise per BufferedReader aus der .txt Datei raus (in einer while Schleife, versteht sich).
Das Problem ist nur, dass ich die jeweils nächste Zeile mit einer while Schleife nicht so recht auf etwas überprüfen kann.
Ich möchte das tun, da der Inhalt einer Notiz auch Zeilenumbrüche enthalten kann und ich auch nicht im Vorhinein weiss, wie viele darin vorkommen könnten.
Ich habe das Ganze wie folgt probiert:
Dabei wirft mir Eclipse aber eine NullPointerException bei der Abfrage per while Schleife vor 
Ich weiss echt nicht mehr weiter und wäre euch sehr dankbar, wenn ihr mir helfen könntet.
EDIT: Anscheinend springt der BufferedReader tatsächlich auf die nächste Zeile, wenn man in der Bedingung der while Schleife readLine() überprüft.
Ich habe schon in hunderten von Foren nach einer Lösung gesucht, jedoch ohne Erfolg. Daher habe ich mich aus Verzweiflung hier angemeldet, in der Hoffnung, dass mir jemand bei meinem Problem helfen kann.
Grundsätzliches zu meinem Programm:
Es handelt sich hierbei um ein Programm, welches Notizen erstellen, anzeigen, bearbeiten, löschen und abspeichern kann. Das Ganze als GUI mit Java Swing.
Beim speichern der Notizen werden die Werte "Priorität", "Titel" und "Inhalt" aus JTextAreas ausgelesen und zeilenweise (in dieser Reihenfolge) in eine .txt Datei rein geschrieben.
Beim erneuten Start des Programms sollen alle Notizen, die in die .txt geschrieben wurden, wieder schön in einer JList(über ein DefaultListModel) angezeigt werden.
Die Notizen werden in einem Vector gespeichert.
Nun zu meinem Problem:
Ich lese die Daten zeilenweise per BufferedReader aus der .txt Datei raus (in einer while Schleife, versteht sich).
Das Problem ist nur, dass ich die jeweils nächste Zeile mit einer while Schleife nicht so recht auf etwas überprüfen kann.
Ich möchte das tun, da der Inhalt einer Notiz auch Zeilenumbrüche enthalten kann und ich auch nicht im Vorhinein weiss, wie viele darin vorkommen könnten.
Ich habe das Ganze wie folgt probiert:
PHP:
file = new File("Notizen.txt");
BufferedReader reader;
try
{
reader = new BufferedReader(new InputStreamReader(new FileInputStream(file)));
try
{
while(reader.readLine()!=null)
{
poke=reader.readLine();
poke2=reader.readLine();
while(reader.readLine().startsWith("Niedrig")==false||reader.readLine().startsWith("Mittel")==false||reader.readLine().startsWith("Hoch")==false)
poke3+=reader.readLine();
Notiz notiz = new Notiz(poke, poke2, poke3);
notiz.setStrPriority(poke);
notiz.setStrTitel(poke2);
notiz.setStrInhalt(poke3);
vector.addElement(notiz);
if(poke.equals("Hoch"))
dlmHoch.addElement(poke2);
if(poke.equals("Mittel"))
dlmMittel.addElement(poke2);
if(poke.equals("Niedrig"))
dlmNiedrig.addElement(poke2);
}
}
catch (IOException e)
{
e.printStackTrace();
}
}
catch (FileNotFoundException e1)
{
e1.printStackTrace();
}

Ich weiss echt nicht mehr weiter und wäre euch sehr dankbar, wenn ihr mir helfen könntet.
EDIT: Anscheinend springt der BufferedReader tatsächlich auf die nächste Zeile, wenn man in der Bedingung der while Schleife readLine() überprüft.
Zuletzt bearbeitet: