- - PR -
ファイルを開くとき、アプリケーション選択/関連付けを利用したい
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2008-04-14 04:55
お世話になります。
現在、Javaの勉強を目的に、JDK 1.6を使ってランチャーを作っています。 現状では、テキストファイルにランチャーで開きたいファイルや、ファイルを開くアプリケーションのパスを予め入力し、 ボタンやメニューアイテムがクリックされると、テキストファイルに記述されたパスを読込み、 ファイルをアプリケーションで開くものが作れています。 以下がファイルを開く処理部分です。 /* ファイルを開くためのApplicationとファイル 起動のためのプロセス作成 */ ProcessBuilder pb; pb = new ProcessBuilder(ファイルを開くアプリケーションのパス, 開きたいファイルのパス); /* プロセスビルダの属性を使って Applicationとファイルを新規プロセスで起動します */ Process p; p = pb.start(); ただ、これだと開きたいファイルの変更を行う時、ファイルパスの変更だけでなく、 ファイルを開くアプリケーションのパスも変更しなくてはならなくて、 慣れればそうではないのですが、使ってみると結構不便です。 そこで、ファイルを開く際、アプリケーションを「関連付け」や、 「プログラムから開く」ということができないか調べてみたのですが、 情報が見つかりませんでした。 どなたか、この問題の対処方法で「こんな情報があるよ。」という方、 情報を頂けませんでしょうか? ちなみにランチャーは WindowsXP(H.E.)、VineLinux問わずで動作することを目標にしています。 現在作り込んだものは、そのどちらでも動作しています。 |
|
投稿日時: 2008-04-14 08:25
JDK6ではjava.awt.Desktopクラスを使うとよいでしょう。
|
|
投稿日時: 2008-04-14 09:12
かつのり様。
早速の御返事ありがとうございます。 ご指摘頂いた、JDK6APIのjava.awt.Desktopクラスを確認しましたところ、 私の欲しい機能を提供してくれるメソッドが確認できました。 今日は、試す時間が無いのですが、 時間を見つけて試してみたいと思います。 情報ありがとうございました。 |
|
投稿日時: 2008-04-16 22:40
かつのり 様。
WindowsXP(H.E.)で試した結果を御連絡致します。 教えて頂いたjava.awt.Desktopクラスのメソッドで、 あるPDFファイルを開くコードを作ってみた結果、 現在パソコンにインストールされている Adobe Reader 8 を使って、 PDFファイルのオープンを確認しました。 まだ、VineLinuxは試していないのですが、 やりたいことが一つ出来ました。 情報ありがとうございました。 |
1