97 votes

Comment ouvrir un fichier avec le programme associé par défaut

Comment puis-je ouvrir un fichier avec le programme associé par défaut en Java? (par exemple un fichier vidéo)

161voto

Zach Scrivena Points 15052

4voto

Espinosa Points 546

Pour freiner l'enthousiasme à propos de Desktop.getDesktop() ouvrir et de parcourir les méthodes - ils ne sont utilisables que pour le plus simple des scénarios. Il n'y a aucune façon comment faire:

  1. Ajouter des paramètres supplémentaires pour l'application, comme les autres, puis sélectionnez profil par défaut pour le navigateur (comme firefox -p test_profile)
  2. Comment communiquer avec l'application après le lancement, pas de PID retourné, pas d'accès à la norme d'entrée ou de sortie du processus.
  3. Pour vérifier que l'application associée est vraiment (ce que le navigateur de l'utilisateur utilise)
  4. Desktop.getDesktop().browse(URI) pouvez modifier l'URI sans possibilité de l'influencer. Au lieu de file:/C:/temp/embedded_js_app.html?mode=test navigateur s'ouvre pas la raison" file:/C:/temp/embedded_js_app.html qui n'est PAS le même pour moi. Vous pouvez vous attendre à plus de manigances de ce genre.

Desktop.getDesktop(), et le sous-jacent WDesktopPeer et ShellExecute, est un mauvais, très rudimentaire cadre, loin d'être vrai bureau de l'intégration. C'est pourquoi Java perdu de son bureau public :(

0voto

l_39217_l Points 1632

SwingHacks a une solution pour les anciennes versions de Java.

Je pense qu'ils ont utilisé l'objet d'Exécution pour exécuter la commande 'start' sur windows et il y a une commande similaire sur le mac.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X