2011-07-18 4 views
-1

いくつかのファイルに柔軟なURLを作成する方法はありますか? 私はサウンドを再生するプログラムを持っており、他のコンピュータでそれを実行したい。 私のプログラムは特定のサウンドファイルを見つけることができますか? または、テキストファイルなどのための柔軟なURLを作成したいことがあります。 誰かが私にこのためのコード例を教えてもらえますか? またはJFileChooserを使用してユーザーに質問する必要がありますか?ファイルの種類に応じて柔軟なURLを作成するために必要なことは何ですか?

私のプログラムにファイルを添付する必要がありますか?これは可能ですか?

P.S: 私が専門家ではないので、説明されたコード例が良いでしょう。

編集:サウンドファイルは ので、この Cのようないくつかの場所であるべきプロジェクトフォルダ(使用日食)の内側にある:\ Users \ユーザーRev3rseのProject1 \ someSound.mp3 は私が十分にUを与えた願っています\ワークスペース\情報...

+1

ここでは、「フレキシブルURL」とは何を意味するのか不明です。あなたは詳しく説明できますか? –

+0

いつも同じ場所にありますか?そのため、相対パス、/somedir/mysound.fileを与えることができます。ここで、最上位のdirは、プログラムの実行元のディレクトリです。 –

答えて

1

いくつかのファイルにフレキシブルURLを作成する方法はありますか? ..ファイルを自分のプログラムに添付する必要がありますか?これは可能ですか?

これは可能であるだけでなく、一般的に行われます。 Jar内のリソースをパッケージ化します。ドキュメントの場合、標準のZip(/ Jar)圧縮を使用することができます。このタイプの圧縮は、イメージやサウンドファイルで使用するのは意味がありません。イメージやサウンドファイルは、独自の(非常に効率的な)圧縮形式を持っています。 Jarをアプリケーションの実行時クラスパスに追加します。

単にの線に沿って何かを使用して、リソースへのURLを取得するには:

URL urlToResource = this.getClass().getResource("path/to/the.resource"); 

..where path/to/the.resourceが配置されているジャーのサブディレクトリです。

+0

あなたはパス/ to/the.resourceなしで私に例を与えることができます、私は本当のURLを話すことができますか? – Rev3rse

+0

@ Rev3rse:* "実際のURLを話しています" * [Class.getResource(String)]とは何か(http://download.oracle.com/javase/6/docs/api/java/lang/Class.html# getResource%28java.lang.String%29)**本当に**あなたがそのリンクをクリックしたときに取得するJavaDocsに応じて返されますか?あなたは*そのメソッドを使って試したときに何が起こったのですか? –

+0

私はgetClass.getResourceを試して、返された値は "null"です私はそれを間違ったやり方でしたか?これをチェックしてください:URL url = this.getClass()。getResource(someSound.mp3); ..ほとんどすべての可能なパスを試しました.. – Rev3rse