2016-09-18 7 views
-4

У меня есть файл jar с именем «mail.jar». Я извлек файл jar через java-код. Теперь у меня есть файл манифеста в разделе «D: /Test/META-INF/MANIFEST.MF». This is the image of Manifest.mf file content. В любом случае, я могу прочитать файл манифеста с помощью FileReader и BufferedReader и распечатать его на консоли. В файле манифеста ниже представлены данные r. (1) Manifest-Version: (2) Archiver-Version: (3) Создан-By: (4) Экспорт-пакет:Как получить содержимое файла Manifest.mf из файла jar

Теперь мои сомнения в том, как получить все списки пакетов под Экспорт-пакет: только тег. Может ли кто-нибудь мне помочь здесь? Любая помощь будет оценена по достоинству.

O/P должен отображаться, как показано ниже. Expected O/P screen shot

С уважением, AD

+0

Пожалуйста, перефразировать ваш вопрос. Непонятно, что вы хотите или нужно. –

+0

Соломон, вы сейчас получаете мое требование? Plz сообщите мне, если вы сомневаетесь в каких-либо сомнениях ... – Abinash

+1

Возможно, с помощью [Манифест] (https://docs.oracle.com/javase/7/docs/api/java/util/jar/Manifest .html). Создайте объект с входным потоком из файла манифеста. – PeterMmm

ответ

1

Привет Solomon & PeterMmm, Спасибо за вашу помощь. теперь я могу получить доступ к содержимому файла манифеста для определенного атрибута. Ниже приведен фрагмент кода, я использую: -

public class ReadmanifestFile { 
public String getManifestAttributes() throws IOException { 
    String value = null; 
    File file = new File("G:/AD/JAR_FILES/mail.jar"); 
    if (file.isFile()) { 
     JarFile jarfile = new JarFile(file); 
     Manifest manifest = jarfile.getManifest(); 
     Attributes attributes = manifest.getMainAttributes(); 
     value = attributes.getValue("Export-Package"); 
     String[] arr = value.split(";"); 
     for (int i = 0; i < arr.length; i++) { 
      System.out.println(arr[i]); 
     } 
    } 
    return value; 
} 

}

для вывода на выше фрагмента кода нажмите ниже: - Output

Я думаю, что это правильный путь do.Plz сообщите мне, могу ли я улучшить фрагмент кода любым другим способом.

С уважением, AD