Datei in den Pabierkorb verschieben (löschen)
lima-city → Forum → Programmiersprachen → Java
abfragen
betriebssystem
code
dank
datei
dementsprechend verschieben
entsprechende verzeichnis
erstellen
file
leute
methode
objekt
ordern
ordner
papierkorb
system
url
verschieben
versteckter ordner
windows
-
Hi Leute,
ich hab ein kleines Problem: Wie kann man eine Datei in den Pabierkorb verschieben.
(Die normale "Löschfunktion" über File.delete ist mir bekannt, für mich aber unbrauchbar, da sie Dateien "direkt" löscht.)
MfG
koslo -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
hm, ich kann zwar kein java, aber der papierkorb ist doch im grunde nur ein versteckter ordner. hast du schon mal versucht, die datein tatsächlich nur in den ordner zu verschieben? vielleicht vorher mal manuell machen und gucken, ob eine datei, die in diesem ordner landet, auch in dem normalen papierkorb angezeigt wird ... ich hab kein windows und kann es von daher nicht selbst testen.
der order heißt Recycler, aber verschiedene accounts haben ihre eigenen papierkörbe. hier steht etwas dazu. auch die links am ende des artikels sind ganz lesenswert, glaube ich.
wenn nicht, melde den beitrag hier einfach als spam an -
Die Idee hatte ich auch schon. Aber ich hoffe, dass es auch irgendwie anderst geht.
-
Moin,
nein, einen anderen Weg gibt es nicht, es sei denn Du baust Dir einen zusammen.
Java ist nicht darauf spezifiziert, irgendwelche zu löschenden Dateien in den Papierkorb des jeweiligen Systems zu hinterlegen.
Da musst Du schon selbst Hand anlegen.
Gruß,
Pawnee -
Na gut, konnte ich mir schon denken. Aber fragen kostet ja nichts! Danke.
-
Kannst du das mal näher erklären. Ich versteh nicht, worauf du hinaus willst.
-
Moin,
Du fragst per System.getProperty("os.name") ab, welches Betriebssystem verwendet wird.
Danach musst Du eventuell noch ein System.getProperty("os.version") mitliefern,
da es bei der Windows-Reihe Unterschiede in den Verzeichnispfaden für den Papierkorb gibt.
Und je nach Betriebssystem "verschiebst" Du die Datei(en) und Ordner die Du löschen willst in das entsprechende Verzeichnis vom Papierkorb.
Gruß,
Pawnee
Beitrag zuletzt geändert: 2.6.2009 16:10:27 von pawnee -
Aso, es geht wieder um das Verschieben....
Gut, gut, das bekomm ich schon hin.
Trotzdem danke. -
htnipdb schrieb:
Schreib dir doch eine Klasse "Recycler", die dann für das jeweilige OS eine Löschfunktion enthält. Dann überprüfe beim Löschen, welches OS gerade ausgeführt wird und starte den jeweiligen Handle. Am besten mit Static-Methoden, damit du kein neues Objekt erstellen musst.
mfg
htnipdb
Damit meinte ich, dass du das wie oben schon erwähnt wieder verscheibst (os.name und os.version), du dir dafür aber am besten eine eigene Klasse mit einer Static-Funktion baust, die dann unterscheidet, wie die Datei verschoben werden muss, sowas wie hier:
public static void recycle(File datei) { //Systemeigenschaften abfragen evtl. Strings zuweien if (name == "windows") { //versionen abfragen und dementsprechend verschieben } else if (name == "mac") { //dementsprechend verschieben } //weitere os berücksichtigen (debian, ubuntu (also z.B. alle Linux-Distr.) }
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage