Eclipseから任意のファイルを開きたい。現在、私はそのようにしています:Eclipse:ファイルを開くアプリケーションを選択するようにユーザーに促す方法は?
if (((File) selectedElement).isFile()) {
try {
Desktop.getDesktop().open((File) selectedElement);
} catch (IOException e) {
//TODO prompt for the appropriate application to open this file.
e.printStackTrace();
}
}
残念ながら、これは、OSにファイルタイプに関連付けられているデフォルトのアプリケーションがある場合にのみ動作します。そのため、デフォルトアプリケーションが定義されていない場合は、使用するアプリケーションをユーザーに尋ねる必要があります。しかし、私はどのように1)利用可能なアプリケーションのリストを見つけ、2)そのアプリケーションでファイルを開くのか分かりません。プラットフォームに依存しない方法でこれを実装する方法についてのヒントはありますか?
をあなたは「エクリプスから」意味するか、のように、これはRCPアプリケーションやプラグインです。それとも、EclipseがあなたのIDEだということですか? Desktop.open()を使用するのはEclipseの最初の方法ではないからです。 –
私はプラグインを書いています。このプラグインは、OSのすべてのファイルを参照する可能性があります。今、ファイルがテキストファイルやJavaファイルでない場合は、OSのデフォルトアプリケーションでファイルを開きたいと思います。たとえば、MS Wordのdocxドキュメントです。これは、ファイルタイプがOSのアプリケーションに関連付けられている限り機能します。ファイルタイプがまだOSのデフォルトアプリケーションでない場合、私のアプローチは失敗し、どのアプリケーションを使うべきかをユーザに尋ねたい。しかし、私はそれをどうやってできるのか分かりません。 –