2012-02-13 16 views
0

ネットからjarファイルを取得します。私はそれを開いて、その中に必要なファイル(.txtファイル)を検索することができました。そのために、JarEntryとgetNextJarEntry()メソッドを使用しています。 最後に、必要なファイルを特定したら、ディスク上のあるディレクトリに保存したいと考えています。私はこれをする方法を知らない。私がファイル識別の後に持っているオブジェクトは、保存したいファイルに対応するJarEntryです。 誰かが私に必要なファイルを保存する方法を教えてもらえますか?jarからファイルを検索して抽出します。 Java

私は悪いですが、私はJarInputStreamとjar自体ではありません。元JarFileオブジェクト上

答えて

2

、あなたはJarEntryを渡し、InputStreamを取得することができます:

InputStream getInputStream(ZipEntry ze) 
2

は、JarFile.getInputStream(ZipEntry)メソッドを使用して入力ストリームからすべてのバイトを読み、のFileOutputStreamに書き込みます。

+0

実際、私はJarFileを持っていません。私はJarInputStreamオブジェクトを持っています。 – ilija

+1

JarInputStream(http://docs.oracle.com/javase/6/docs/api/java/util/jar/JarInputStream.html#read%28byte[],%20int,%20int%29)の読み取りメソッドエントリの最後に達した場合は-1を返します。 –

1

カスタムクラスローダー(java.net.URLClassloader)を使用してJARをロードし、getResourceAsStreamを使用してリソースを取得することができます。

関連する問題