Offene Datei?

Status
Nicht offen für weitere Antworten.

gino

Mitglied
Ich habe ein Programm, welches mir forlaufend *.txt Dateien erzeugt. Diese können sehr groß werden. Ich habe nun in Java ein Programm geschrieben, das diese *.txt Dateien erst packt und anschließend die Originalversion löscht. Das grobe gerüst funktioniert schon nun zu meinem Problem:

Wie kann ich erkennen, ob das Programm (welches die *.txt Dateien erzeugt) eine solche Datei fertig abgeschlossen hat? Ich müsste im Grunde mit dem Java-Programm schauen ob die *.txt Datei noch offen ist.

Weiß jemand wie ich das Problem lösen kann?
 
probiers mal damit:

http://java.sun.com/j2se/1.5.0/docs/api/java/io/File.html#canWrite()
 
Das habe ich schon ausprobiert. Obwohl die Textdatei im Editor geöffnet ist liefert canWrite() true. Das allerbeste ist, dass mein Programm die Datei sogar löschen kann obwohl sie im Editor offen ist.

Kannst du das erklären?
 
na wenn der editor das ding nur gelesen hat?

soweit ich mich erinnere, ist das mit dem "Sperren" etwas tricky unter Java,

gibts keine andere Möglichkeit bei dir:

das datum?

ein spezieller dateiname (foo-fertig.txt wenns fertig ist, foo.txt wenn nicht?)
 
Ich habe leider keine Möglichkeit das Programm welches die *.txt erstellt zu beeinflussen. Es werden etwa 1000 Zeilen pro Sekunde erzeugt. Wenn eine Datei eine gewisse Größe erreicht hat, wird diese Abgeschlossen und eine neue angelegt. Ich könnte die Größe der Datei abfragen, aber es würde mir besser gefallen wenn es irgendein Flag gibt, das tatsächlich anzeigt ob die Datei gerade vewendet wird oder nicht.
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben