Mam na przykład plik .pdf
(ścieżka do tego pliku). Jak otworzyć ten plik w domyślnej aplikacji (prawdopodobnie Acrobat Reader) z aplikacji SWT (na przykład przy kliknięciu przycisku)?Jak otworzyć plik z domyślną aplikacją w SWT?
Odpowiedz
powinien mieć możliwość korzystania z:
Program.launch(file);
do otwarcia pliku (za pomocą domyślnej aplikacji lub twórcy). Z modułu javadoc:
Uruchamia plik wykonywalny systemu operacyjnego skojarzony z plikiem lub adresem URL (http: // lub https: //). Jeśli plik jest wykonywalny, uruchamiany jest plik wykonywalny. Zauważ, że
Display
musi już istnieć, aby zagwarantować, że ta metoda zwróci odpowiedni wynik.
Należy zauważyć, że istnieją pewne osobliwości w Program.launch()
(lub przynajmniej nie było, choć mogą one zostały ustalone w nowszych wersjach środowiska wykonawczego.) Naprawdę nie pamiętam specyfiki błędów, ale zrobić kilka testów, aby obejść pewne problemy:
Jeśli jesteś na platformie Unix, a ty określania ścieżki bezwzględnej, może być kłopot otwarcia tego pliku. Poprzedzamy ścieżki bezwzględne wartościami
/.
- aby/tmp/foo
było przetłumaczone na/./tmp/foo
- chociaż nie pamiętam dokładnie szczegółów tego błędu.W systemie Windows, jeśli próbujesz otworzyć ścieżkę UNC - na przykład
\\server\bar
- musisz zawinąć ciąg w podwójnych cudzysłowach. Na przykład:Program.open("\"\\server\bar\"");
Spróbuj Desktop.open:
Desktop.getDesktop().open(file);
Osobiście wolałbym rozwiązanie SWT nad wersją AWT. Most SWT <-> AWT jest zwykle niepotrzebny i lepiej go nie używać, chyba że musisz. –
@PranitBauva Dlaczego? – Baz
Może to pomoże znaleźć decyzję: wpadliśmy PermGen przestrzeni ucisku na wezwanie Desktop.open()
- co jest w AWTpackage - z naszej aplikacji SWT.
Więc wolałbym Program.launch()
niż Desktop.open()
w środowisku SWT.
- 1. Jak otworzyć pobrany plik w Androidzie z domyślną aplikacją dostępną w Androidzie
- 2. Jak otworzyć plik z wiersza poleceń z określonym programem?
- 3. Otwórz plik z powiązaną aplikacją
- 4. Jak otworzyć domyślną przeglądarkę w C#
- 5. Jak otworzyć plik .smsu?
- 6. Jak otworzyć plik "nul"?
- 7. Jak otworzyć plik .hprof
- 8. Jak otworzyć plik z poziomu Vima?
- 9. Jak otworzyć plik z domyślnym programem powiązanym?
- 10. Jak otworzyć domyślną przeglądarkę systemową z aplikacji java fx?
- 11. Jak otworzyć domyślną przeglądarkę z captive na Androidzie
- 12. Jak powiązać plik CSV z moją aplikacją w iOS 7
- 13. Jak otworzyć ten plik .DB?
- 14. Android Jak otworzyć plik .doc?
- 15. jak otworzyć plik w folderze domowym użytkownika
- 16. Jak otworzyć plik do czytania w C?
- 17. Jak otworzyć plik .xlsb w R?
- 18. Jak otworzyć plik źródłowy w GDB TUI
- 19. Jak otworzyć plik Excel w PHP?
- 20. Jak otworzyć plik otwarty w innej aplikacji
- 21. Jak otworzyć ostatnio zamknięty plik w PhpStorm?
- 22. Jak rozmawiać z funkcją JavaScript z SWT
- 23. Jak otworzyć plik cshtml w nowej karcie z metody kontrolera?
- 24. Jak otworzyć plik w przeglądarce Chrome z wiersza poleceń?
- 25. Jak otworzyć plik PDF w Androidzie z folderu zasobów?
- 26. otworzyć plik z nazwą pliku Unicode?
- 27. Scala SWT z SBT
- 28. JFreeChart z SWT
- 29. Jak otworzyć plik vcproj od Eclipse CDT?
- 30. Jak otworzyć plik P4 za pomocą hiperłącza
W mojej aplikacji na WinXP i Win7 'Program.launch (" C: \\ dev \\ test.pdf ");' call work good - Acrobat Reader jest otwarty i to wszystko. Dziękuję Ci. – marioosh
@ edward-thomson, w którym pakiecie znaleziono klasę "Program"? –