2009-05-11 15 views
8

Chcę uruchomić plik (dokument) z programu Java i stopniowo następujące wymagania:plik Uruchom z Java

  • Metoda musi applicabale na systemach Mac, Win i Linux
  • nie jestem może używać "Runtime.getRuntime(). exec (" cmd.exe/C + "nazwa pliku");
  • Plik jestem uruchomienie musi być z doc/docx/rtf

Plik jest tworzony wykonawcze, wynika z raportu tworzony. Jakieś dobre praktyki?

+0

Nie jestem pewien, co oznacza, że ​​uruchomienie pliku oznacza ... czy istnieje ograniczenie dotyczące otwierania pliku przez program? Czy chcesz uruchomić konkretną aplikację z otwartym plikiem? Czy na pewno wszystkie komputery, na których uruchamiasz program, będą miały program obsługujący pliki .doc? – LB40

+0

Uruchomienie w tym kontekście oznacza otwarcie pliku z powiązanym programem. Tak, mam gwarancję posiadania programu obsługującego .doc –

Odpowiedz

4

Jeśli używasz 1.6, należy użyć API pulpitu za radą mad-J jest. Jeśli używasz starszej maszyny wirtualnej (1.5 lub wcześniejszej), w tym celu musisz napisać własny kod specyficzny dla platformy.

na komputerze Mac,

Runtime.getRuntime().exec(new String[] {"open", pathToFile}); 

Na oknach

Runtime.getRuntime().exec(new String[] {"cmd.exe", "/C", pathToFile}); 

Może trzeba uciekać ścieżkę na oknach.

+0

Powiedział, że nie może używać cmd.exe. –

+0

Czy ktoś musi napisać jakąś klasę narzędziową dla JVM sprzed 1.6? –