Java uruchamianie pdf [SOLVED]

0

Mam taki problem
potrzebuje uruchomić aplikację dokładnie to dokument PDF.
wiem że można to rozwiązać w taki sposób

Runtime.getRuntime().exec("rundll32 SHELL32.DLL,ShellExec_RunDLL "+nazwaPliku+".pdf");

ale taka aplikacja jest nie przenośna.
I na linuxie juz nie zadziała. Moje pytanie czy jest w javie jakaś uniwersalna metoda uruchamiania aplikacji
a dokładnie to pdf?

0

Zawsze to jakimś wyjściem jest coś takiego:

String osName = System.getProperty("os.name");
if (osName.startsWith("Mac OS")) {
	// Mac OS
} else if (osName.startsWith("Windows"))
	// Windows
else {
	// Linux/Unix
}
0

W javie 6 mozna tak:

if (Desktop.isDesktopSupported() {
    try {
        Deskttop.getDesktop().open(new File("costam.pdf"));
    } catch (IOException exc) {
        // error ze nie ma domyslnej aplikacji
    }
} else {
    // komunikat ze nie ma desktopu
    // Desktop jest wspierany pod Windows, Linux, Mac, Solaris itp
    // jesli tylko uruchamiasz aplikacje w okienkach a nie z czystej konsoli np putty
}

Kod ten sprawdzi jakie system ma domyslne aplikacje do otwieranai danego typu plikow, i jesli ma skojarzenie to go uzyje. Elastyczne rozwiazanie.
Pozdrawiam.

0

Przyznaje rozwiązanie bardzo eleganckie i świetnie działa. Dzięki serdeczne.

Problem rozwiązany

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.