XML Datei erstellen und gleich wieder parsen

Tylor Durden

Grünschnabel
Hi!

Ich arbeite momentan an einer generischen Gui die ich mittels Thinlet verwirklichen möchte. Zu dem muss ich eine XML-Datei erstellen und diese anschießend sofort wieder parsen. Folgendes Problem: Anscheinend arbeitet der Fileoutputstream zu langsam und somit ist noch keine Datei zum Parsen vorhanden. Kurzen Augenblick drauf schon.
Nun meine Frage: Gibts für dieses Problem irgendeinen Trick? Hab mir schon gedacht diese beiden Arbeitsschritte in 2 Threads zu verpacken und den einen auf den anderen "warten" zu lassen...
 
Für XML gibts eigene Streams.
Aber da kommt es ersteinmal darauf an, wie viel XML du hast, wieviel du damit arbeites (in deiner App.) usw.
Und je nach dem, nutzt man dann Sachen wie SAX oder JDOM...um nur mal 2 große zu nennen. Kannst ja mal dannach googlen.
Wie ^verwendest^ du denn dein XML.
 
Hi!

verwende bereits JDom...
SAX kann ich in diesem Fall nicht verwenden...

Verwende es folgendermaßen: Ich hol mir aus einer DB versch. Objekte. Diese bastle ich je nach Anzahl und Typ zu einem JDOM-Baum zusammen und schreide dies in eine Datei:
try {
XMLOutputter outputter = new XMLOutputter();
outputter.output(doc, new FileOutputStream("src\\GUI\\students.xml"));
}catch (Exception e){
e.printStackTrace();
}
 
Du willst gleich nach dem was in TRY steht das File wieder lesen?
Dann füge dem TRY noch ein finally an, und lese dann die Datei wieder.
Das sollte eigentlich gehen.
 
Hi!

try {
XMLOutputter outputter = new XMLOutputter();
outputter.output(doc, new FileOutputStream("src\\GUI\\students.xml"));
}catch (Exception e){
e.printStackTrace();
}finally{
//Pase-Anweisung für Thinlet
add(parse("students.xml"));
}

So funktionierts leider nicht...oder hab ich Dich falsch verstanden?
 
Wie? Hast du das selbe problem, oder ein anderes?
Wenns nix aus macht, schreib mal bitte den ganze Code.
Das lässt sich besser lesen.
 
Zuletzt bearbeitet:
Hi!

bekomm' die gleiche Fehlermeldung... Null-Pointer bzw. Unknown Source

Kann es sein dass Eclipse daran schuld is? im Ordner wird die XML-Datei erstellt...im Eclipse seh ich die natürlich erst dann wenn ich refreshe...?
 
Nein ich glaube nicht, dass eclipse schuld hat.
Das kling dannach, als würdest du das File (input),
nicht wriklich kriegen.
Ist besser du postest mal den Code und die fehlermeldung.
 
Hi!

Aber wenn ich meine Applikation ein 2.mal danach ausführe, verwendet er die XML datei die er beim 1. mal erstellt hat! D.h. er liest ja die Datei, eben nur bevor er sie fertig geschireb hat.
 
Zurück