このような機能については、JTextAreaを使用し、独自の基本的なテキストエディタを提供する方がはるかに良いと思います。
とにかく、BareBonesBrowserLauncherをご覧ください。これは、任意のプラットフォームでデフォルトのブラウザを起動できるようにするJavaクラスです。あなたのニーズに合わせて調整することができます。そこからコピーされた:それはOSがファイルはCSVの場合には通常、むしろスプレッドシートアプリである、で編集する必要があると考えるものは何でも起動しますが、
String[] editors = { "vim", "emacs", "vi",};
String editor = null;
for (int count = 0; count < editors.length && editors == null; count++)
if (Runtime.getRuntime().exec(new String[] {"which", editors[count]}).waitFor() == 0)
editor = editors[count];
if (editor == null)
throw new Exception("Could not find editor");
else Runtime.getRuntime().exec(new String[] {editor, filename});
私が間違っているかもしれないが、* nixのは、通常はデフォルトのエディタのための変数を持っていませんか? – willcodejavaforfood
面白いですが、今朝ちょっと驚いたことに、Windows®でデフォルトのテキストエディタを呼び出すにはどうすればいいのですか?☺GNU/Linuxでは "$ EDITOR"変数になりますが、Windows用の方法はわかりませんでした。 'notepad.exe'を呼び出すことはフォールバックの動作でなければならないと私は考えています。ほとんどの場合、ユーザーには好みのエディタがあります。しかし、私はWindows®上で、そのタイプに応じてファイルを開くDEの機能を呼び出さなければならないことに気がつきました。 –