2011-07-24 13 views
1
私は、ファイルを読む必要が

内部からファイルを読みますか?私はライブラリを使用しているので、私がアクセスできる唯一の方法は​​で、入力ストリームはありません。それは、このようにjarファイルのフォルダ内にある、の.jarフォルダ

+0

um、これと重複しているようです:http://stackoverflow.com/questions/6639/how-should-i-load-files-into-my-java-application – home

+0

@Arthur Shniv * "' DataSource' "*あなたは私のためにそれをあいまいにすることができますか?それは 'javax.activation.DataSource'、' javax.sql.DataSource'なのでしょうか? * "私はライブラリを使用しているので、ファイルにアクセスできる唯一の方法は新しいFile()で、入力ストリームはありません" * APIを修正する必要があるように思えます。どちらかを使用するか、別のものを使用してください。 –

答えて

1

あなたは間違っています。ファイルは、ファイルシステムに直接書き込まれたものだけです。 jarファイルはJava APIの観点からはファイルではありません。

このファイルを読み込むには、JarInputStreamまたはZipInputStreamのいずれかを使用してJARを解析し、興味深いエントリを取得し、入力ストリームから読み込む必要があります。それは難しいことではありませんが、いくつかのコード行を書く必要があります。

その他のアプローチは、jakarta.orgのVFSパッケージを使用しています。それは、異なるファイルシステム、ZIP、TAR、および他のコンテナ形式の要素に関する統一されたビューを提供します。

0

@homeがすでに話していたInputStream(getResourceAsStream())メソッドを使用して新しい一時ファイルを作成し、それを通常のファイルとして読み込むのはどうですか?

関連する問題