Czy można uruchomić inną aplikację zainstalowaną w systemie przy pomocy mojej aplikacji java i przekazać plik jako parametr do nich? Mam klienta, który odbiera wideo z serwera i chcę, aby mój program klienta się uruchomił, powiedzmy odtwarzaczowi VLC z plikiem, który otrzymałem. Jak mam to zrobić?Uruchamianie innych aplikacji za pomocą Javy
Odpowiedz
Wpisz Desktop#open()
. Uruchomi ona domyślną aplikację powiązaną z platformą, aby otworzyć dany plik.
File file = new File("/absolute/path/to/file.vlc");
Desktop.getDesktop().open(file);
Nie trzeba kłopotów z Runtime#exec()
lub ProcessBuilder
za które trzeba by dodać wykrywanie platformy i napisać logiki specyficzne dla platformy.
+1 Nie widziałem tego wcześniej. Ciekawy. – Brabster
Z łatwością można uruchomić program zewnętrzny na Javę 5+ z ProcessBuilder, w tym przekazywanie argumentów i obsługę strumieni wejścia/wyjścia.
np.
ProcessBuilder movieProcess = new ProcessBuilder("/path/to/movieplayer", "/path/to.moviefile");
movieProcess.start();
Tylko używał go sam wykonujący non-UI rzeczy, dam mu szybko iść i zobaczyć, co się dzieje z czymś VLC.
Aktualizacja:
Aktualizacja - działa przysmak dla flv na Ubuntu, interfejs jest widoczny i akceptuje argumenty pliku.
Słodko, nie wiedziałem o tym! :-) –
Po prostu:
Runtime.getRuntime().exec("vlc [arguments]"); //Write all arguments as you would in your shell.
Upewnij się złapać wszystkie istotne wyjątki
Pod warunkiem, że VLC znajduje się w PATH. Tak nie jest w moim systemie ... – Joey
Następnie podaj ** pełną ** ścieżkę do pliku + rozszerzenie VLC. –
Możesz wywołać metodę exec na obiekcie Runtime.
Runtime.getRuntime().exec("System specific command line text here");
- 1. Uruchamianie aplikacji za pomocą intencji URI
- 2. XY Wykreślanie za pomocą Javy
- 3. Wizualizacja drzewa za pomocą Javy
- 4. Limit rachunku za pomocą Javy
- 5. Jak wysłać SMS za pomocą Javy
- 6. Android: uruchamianie zadania w tle za pomocą aplikacji AlarmManager
- 7. uruchamianie aplikacji za pomocą dźwięku w pojemniku dokowania
- 8. Uruchamianie aplikacji kolby za pomocą nginx i gunicorn
- 9. Uruchamianie aplikacji na Androida za pomocą niestandardowego polecenia Google Now
- 10. uruchamianie skryptów za pomocą procesora
- 11. Symuluj polecenie dotykowe za pomocą Javy
- 12. Zamykanie systemu Windows za pomocą Javy
- 13. Przekształcanie klas za pomocą Javy 8
- 14. Wyodrębnianie pliku ISO za pomocą Javy
- 15. Kompresja z dekompresją Javy za pomocą PHP
- 16. Testowanie jednostkowe kodu C++ za pomocą Javy
- 17. Testowanie jednostek Javy za pomocą V8
- 18. Uruchamianie skryptów bash za pomocą npm
- 19. Testowanie jednostek za pomocą innych klas testowych
- 20. Uruchamianie łącznie za pomocą klauzuli over
- 21. Uruchamianie witryny za pomocą wiersza poleceń Windows
- 22. Automatyczne uruchamianie profilowania procesora za pomocą VisualVM
- 23. Uruchamianie zatrzymanej instancji EC2 za pomocą Boto
- 24. Uruchamianie kreatora za pomocą przycisku w OpenERP
- 25. Uruchamianie aplikacji hosta z aplikacji zegarka
- 26. Uruchamianie sekwencji aplikacji Swift
- 27. Uruchamianie Facetime z aplikacji?
- 28. Jak przesyłać strumieniowo pliki MP3 za pomocą czystej Javy
- 29. Wyszukiwanie sekwencji Bajtów w pliku binarnym za pomocą Javy
- 30. Tworzenie komunikatu SOAP z przykładowego XML za pomocą Javy
Zaakceptuj coś pierwszy! (dostaniesz odznakę i więcej odpowiedzi). – Roman
Możesz znaleźć historię swoich pytań na stronie profilu (stronie, którą zobaczysz po kliknięciu w dowolnym miejscu, gdzie twoje imię pojawia się jako link): http: // stackoverflow.com/users/283494 Głosuj na pytania, które uznałeś za przydatne, klikając strzałkę w górę i zaakceptuj odpowiedzi, które faktycznie pomogły w rozwiązaniu problemu, klikając znacznik wyboru. Utrzymaj ducha StackOverflow przy życiu :) – BalusC
oh, przepraszam. Jestem nowy w stackoverflow i nie wiedziałem, że muszę to zrobić. – user283494