Finder aus java starten

T

thoralf

Aktives Mitglied
Thread Starter
Dabei seit
22.12.2005
Beiträge
225
Reaktionspunkte
4
Hallo,

ich möchte gerne eine Funktion wie "Reveal in Finder" in java implementieren. Unter Windows geht das ja einfach über
Code:
Runtime.getRuntime().exec("explorer.exe \""+verzeichnis + "\"");

Dazu zwei Fragen: Kann mir bitte jemand das OSX-Pendant schreiben? Wie finde ich möglichst in einer Zeile heraus, ob die VM unter Windows oder unter OSX gestartet wurde?

Danke,
Thoralf
 
also für das OSX terminal gibts den open befehl, der die angegebene datei, bzw den pfad im dafür vorgesehenen Programm öffnet...
also:
"open ~/Test" öffnet den Test Ordner im Homeverzeichnis des aktuellen users...
allerdings hab ich es nicht geschafft, den befehl mit Runtime.getRuntime().exec zum laufen zu kriegen... es passiert ... nix.
 
Code:
Runtime.getRuntime().exec("open -a /System/Library/CoreServices/Finder.app  \""+verzeichnis + "\"");


EDIT: Anscheinend wird ein "~" nicht aufgelöst
 
Zuletzt bearbeitet:
Danke! Der Code
Code:
Runtime.getRuntime().exec("open \""+verzeichnis + "\"");
funktioniert auch. Damit wäre das Problem gelöst.

Die Frage ist nun, wie man unter java herausbekommt, dass man nun unter windows oder unter osx arbeitet. Falls jemand eine Idee hat, her damit.
 
also google und eine in groben englisch formulierte frage wirken da wunder ;-)
schau ma hier
 
thoralf schrieb:
Danke! Der Code
Code:
Runtime.getRuntime().exec("open \""+verzeichnis + "\"");
funktioniert auch. Damit wäre das Problem gelöst.

Die Frage ist nun, wie man unter java herausbekommt, dass man nun unter windows oder unter osx arbeitet. Falls jemand eine Idee hat, her damit.
Ohne es ausprobiert zu haben: Lass lieber "-a /System/Library..." stehen, denn es ist zwar unwahrscheinlich, aber falls "verzeichnis" ein Bundle sein sollte, könnte es sein, dass statt des Finders die jeweilige Anwendung gestartet wird...
 
Zurück
Oben Unten