Input/Output java.io.File beenden

Osram127

Mitglied
Hallo!
Ich habe in meinem Projekt eine Methode, die Dateien aufruft:
Java:
public void dateiStart(String pfad) {
        URL url = getClass().getResource(pfad);
        File file = new File(url.getFile());
      
        try {
            d.open(file);
        } catch (IOException e) {
            new LaunchException(e);
        }
    };
Durch diese Methode werden auch Dateien ausgeführt, welche sich selbst nicht mehr beenden. Deswegen hätte ich gerne eine Abbruchmethode, welche die Dateien auch wieder schließt. d steht für ein Desktop-Attribut. Eine Methode wie d.close() scheint es ja in der Klasse Desktop nicht zu geben... Weiß jmd von euch wie ich diese Dateien wieder schließen kann?

Ps: Ich bin leider noch ein ziemlicher Anfänger, wenn es um java.io geht, also sorry falls es doch eine einfache Methode dafür gibt und ich einfach zu dumm war diese zu finden.
 
Zuletzt bearbeitet:
File hält nur Informationen zu einer Datei und öffnet diese nicht.

Daher ist die Frage, was d für eine Instanz ist und was das open dort macht. Ggf hast d auch eine close Methode, die man aufrufen könnte...

Aber ohne Details zu kennen kann man da nicht viel sagen.
 
d ist eine java.awt.Desktop Variable. Stimmt das habe ich ganz übersehen, dass ja eigentlich die Methode open() garnicht von der Klasse File kommt. Gibt es bei Desktop vlt eine Methode?
 
Hmm, das ist ja blöd...
Gibt es da nicht noch vlt eine andere Möglichkeit, das aktive Programm irgendwie abzurufen und dann zu schließen? Zb durch andere Klassen, die sowas können?
 
Das wird schwer, da Du keine wirkliche Kontrolle hast, was da gestartet wird. Es ist ja abhängig von der Konfiguration des Systems.

Statt der Desktop Klasse könntest Du gezielt einen Prozess starten, der die Datei benutzt. Dann hast Du den Prozess und kannst diesen ggf. beenden.

Aber die Frage ist, was Du da überhaupt vor hast. Was willst Du genau machen?
 

Zurück
Oben