オブジェクトがどのように機能するかを見てみましょうFile
。
まず、FileTest.java という名前のファイルに次のコードがあるとします。
public class FileTest {
public static void main() {
File[] files = new File("temp").listFiles();
for (File f : files) System.out.println(f.getName());
}
}
これをコンパイルすると、javac は FileTest.class という名前のファイルを作成します。(Eclipse でもこれを行います。.class ファイルを .java ファイルとは別のフォルダーに配置するだけです。) このプログラムを実行すると、FileTest と同じフォルダーにある「temp」という名前のフォルダーが検索されます。 .class ファイル。
ここで、filetest.jar という名前の JAR ファイルを作成し、それに FileTest.class を追加するとします。ここで、JAR ファイルからプログラムを実行すると、 filetest.jarファイルと同じフォルダーにある「temp」という名前のフォルダーが検索されます。つまり、ハード ドライブのファイル システム内のファイルとフォルダーFile
のみを検索します。filetest.jar を含むファイルの内容についてはまったく何も知りません。
JAR ファイルの内容を読み取るには、別の解決策を見つける必要があります。まず、JAR ファイル内には「ファイル」や「フォルダー」などがないことを理解する必要があります。JAR ファイルは、いくつかの追加機能を備えた単純な ZIP ファイルです。これまでに提供していただいた情報から、問題を解決するにはjava.util.zip.ZipFileを使用する必要があると思います。チュートリアルをグーグルで検索するか、ここにリンクした API ドキュメントを参照することから始めることをお勧めします。