0
我有一個要求,以獲得冬眠配置文件,這是一個內部的JAR文件,再此JAR文件裏面是通過Java編碼一個EAR文件。怎麼去解壓縮EAR> JAR文件通過Java編碼後的Hibernate配置文件
一隻耳朵包含許多jar文件和一個JAR文件包含單個的Hibernate配置文件。
所以結構是什麼,
一隻耳朵 -
## --Jar1 ##
### ---Folder Structure, and somewhere in the structure hibernate cfg file resides ###
## --Jar2 ##
### ---Folder structure, and hibernate cfg file ###
##--Jar3 and so on ##
是我的嘗試是我所使用的Java API的ZipFileInputStream讀者解壓縮EAR文件,但我沒有得到真實路徑(絕對路徑)的Jar文件,這樣我就可以提取Jar文件並獲得我從這些提取層次結構中獲得的hibernate cfg文件。
我能夠做到這直接包含使用Java代碼使用Java API的ZipFileInputStream讀者冬眠CFG文件解壓縮樣本EAR。但我的要求是EAR包含JAR,並且此JAR包含我正在尋找的配置文件。這一切我公司通過Java編程
下面做的事情是對含有.cfg.xml EAR文件的代碼片段。
FileInputStream fis = new FileInputStream("C:/Users/USER/Downloads/ContactManager.ear");
ZipInputStream zis = new ZipInputStream(new BufferedInputStream(fis));
ZipEntry entry = null; String pathName;
String fileName;
while ((entry = zis.getNextEntry()) != null) { pathName = entry.getName();
if(pathName.endsWith(".cfg.xml")){ System.out.println("path name "+pathName);
請告訴我最好的方法來完成這項任務。 謝謝,
嗨,感謝您的回覆。但我使用java來通過編碼 – Sandy
@Sandy來完成它,所以請顯示你已經完成(代碼),我會盡力幫助你。 –
FileInputStream fis = new FileInputStream(「C:/Users/USER/Downloads/ContactManager.ear」); ZipInputStream zis = new ZipInputStream(new BufferedInputStream(fis)); ZipEntry entry = null; String pathName; String fileName; 而(!(條目= zis.getNextEntry())= NULL){ 將pathName = entry.getName(); 如果(pathName.endsWith( 「cfg.xml中。 」)){ 的System.out.println(「 路徑名」 + pathName中); – Sandy