Как вывести список файлов внутри файла JAR?

У меня есть этот код, который читает все файлы из каталога.

    File textFolder = new File("text_directory");

    File [] texFiles = textFolder.listFiles( new FileFilter() {
           public boolean accept( File file ) {
               return file.getName().endsWith(".txt");
           }
    });

Работает отлично. Он заполняет массив всеми файлами, которые заканчиваются на ".текст" из каталога "text_directory».

Как я могу прочитать содержимое каталога аналогичным образомв файл JAR?

Итак, что я действительно хочу сделать, это перечислить все изображения внутри моего JAR-файла, чтобы я мог загрузить их с помощью:

ImageIO.read(this.getClass().getResource("CompanyLogo.png"));

(Это работает, потому что "Логотип компании" является "жёстко» но количество изображений внутри файла JAR может быть от 10 до 200 переменной длины.)

РЕДАКТИРОВАТЬ

Поэтому я думаю, что моей главной проблемой было бы: Как узнатьимя файла JAR где живет мой основной класс?

Конечно, я мог прочитать это, используя.java.util.Zip

Моя структура такова:

Они похожи на:

my.jar!/Main.class
my.jar!/Aux.class
my.jar!/Other.class
my.jar!/images/image01.png
my.jar!/images/image02a.png
my.jar!/images/imwge034.png
my.jar!/images/imagAe01q.png
my.jar!/META-INF/manifest 

Прямо сейчас яя могу загрузить, например, "Изображения / image01.png» с помощью:

    ImageIO.read(this.getClass().getResource("images/image01.png));

Но только потому, что я знаю имя файла, в остальном я должен загружать их динамически.

Ответы на вопрос(13)

Ваш ответ на вопрос