J'essaie de comprendre comment ouvrir l'éditeur de système préféré pour un fichier donné.Comment ouvrir un éditeur de système d'utilisateur préféré pour un fichier donné?
Dites, nous avons un gestionnaire de fichiers, écrit en Java. L'utilisateur va dans le dossier et voit la liste des fichiers. Et, par exemple, il y a un fichier Icon.jpg
. L'utilisateur double-clique sur le nom de fichier et le fichier s'ouvre dans l'éditeur préféré du système (c'est-à-dire Gimp). Le principal problème est - comment faire cela?
Nous pouvons faire Runtime.getRuntime().exec("something file")
, mais de cette façon, vous devez savoir quel programme est préféré dans l'environnement de l'utilisateur. Mais comment?
Nous sommes également en mesure de faire Desktop.getDesktop().edit(File file)
, mais de cette façon, nous ne pouvons pas suivre le processus et ne sont pas en mesure de savoir alors ce processus de l'enfant est fermé. L'autre question-fonction ne fonctionne pas sous linux (au moins sur Ubuntu 8.10). Il y a également Desktop.getDesktop().open(File file)
, mais il force l'ouverture de la visionneuse de fichiers au lieu de la visionneuse de système pour ce type de fichier.
Je suis à la recherche d'une solution toute la semaine, mais je n'ai pas trouvé de solution générique. Connaissez-vous les autres approches à cette question? Pour mon projet, il suffirait que cela fonctionne sur Windows + Linux + Mac.
Nous vous remercions de vos réponses et de vos conseils.
Modifier sur 2009-02-08 23:04
Autre suggestion: puis-je forcer la fenêtre "de sélection d'applications" dans Windows et sous Linux, comme dans Mac avec "fichier ouvert"? Par exemple, alors vous essayez d'ouvrir le fichier, vous êtes invité à choisir l'application de la liste des systèmes préférés? (quelque chose comme "Ouvrir avec ..." dans Windows Explorer). Savez-vous?
Autre suggestion: puis-je forcer la fenêtre "de sélection d'applications" dans Windows et sous Linux, comme dans Mac? Par exemple, alors vous essayez d'ouvrir le fichier, puis vous êtes invité à choisir l'application de la liste des choix prédéfinis du système? (quelque chose comme "Ouvrir avec ..." dans Windows Explorer). Le savez-vous? –