如何在java中提取.pkg扩展名文件数据
我有一个.pkg文件,我想用Java提取该文件的数据。每当我试图通过如何在java中提取.pkg扩展名文件数据,java,Java,我有一个.pkg文件,我想用Java提取该文件的数据。每当我试图通过ZipFile提取数据时,它都会引发异常: java.io.FileNotFoundException: C:\Users\kapilb\Desktop\kapilBaghel\dmserver.pkg (The system cannot find the file specified) at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.
ZipFile
提取数据时,它都会引发异常:
java.io.FileNotFoundException: C:\Users\kapilb\Desktop\kapilBaghel\dmserver.pkg (The system cannot find the file specified)
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(ZipFile.java:214)
at java.util.zip.ZipFile.<init>(ZipFile.java:144)
at java.util.zip.ZipFile.<init>(ZipFile.java:158)
at dm.com.app.core.database.Testing.unZip(Testing.java:22)
at dm.com.app.core.database.Testing.main(Testing.java:61)
java.io.FileNotFoundException:C:\Users\kapilb\Desktop\kapilBaghel\dmserver.pkg(系统找不到指定的文件)
位于java.util.zip.ZipFile.open(本机方法)
位于java.util.zip.ZipFile。(ZipFile.java:214)
位于java.util.zip.ZipFile(ZipFile.java:144)
位于java.util.zip.ZipFile(ZipFile.java:158)
位于dm.com.app.core.database.Testing.unZip(Testing.java:22)
位于dm.com.app.core.database.Testing.main(Testing.java:61)
守则:
public static void unZip(File objZipFile, File objDestDir) {
try {
ZipFile zipFile = new ZipFile(objZipFile);
Enumeration<?> enu = zipFile.entries();
while (enu.hasMoreElements()) {
ZipEntry zipEntry = (ZipEntry) enu.nextElement();
String name = zipEntry.getName();
File file = new File(objDestDir, name);
if (name.endsWith("/")) {
file.mkdirs();
continue;
}
File parent = file.getParentFile();
if (parent != null) {
parent.mkdirs();
}
InputStream is = zipFile.getInputStream(zipEntry);
FileOutputStream fos = new FileOutputStream(file);
byte[] bytes = new byte[1024];
int length;
while ((length = is.read(bytes)) >= 0) {
fos.write(bytes, 0, length);
}
is.close();
fos.close();
}
zipFile.close();
} catch (IOException e) {
e.printStackTrace();
}
}
publicstaticvoidunzip(文件objZipFile,文件objDestDir){
试一试{
ZipFile ZipFile=新ZipFile(objZipFile);
枚举enu=zipFile.entries();
而(enu.hasMoreElements()){
ZipEntry ZipEntry=(ZipEntry)enu.nextElement();
String name=zipEntry.getName();
File File=新文件(objDestDir,名称);
if(name.endsWith(“/”){
mkdirs()文件;
持续
}
File parent=File.getParentFile();
如果(父项!=null){
parent.mkdirs();
}
InputStream is=zipFile.getInputStream(zipEntry);
FileOutputStream fos=新的FileOutputStream(文件);
字节[]字节=新字节[1024];
整数长度;
而((长度=is.read(字节))>=0){
fos.写入(字节,0,长度);
}
is.close();
fos.close();
}
zipFile.close();
}捕获(IOE异常){
e、 printStackTrace();
}
}
可能是。pkg
是否隐藏?是否确实可以解压缩.pkg?java.io.FileNotFoundException:C:\Users\kapilb\Desktop\kapilBaghel\dmserver.pkg(系统找不到指定的文件)
这是操作系统说该文件不存在。这个错误消息很可能是准确的。你能确认文件确实存在吗?是的,我知道了。Thank guys InputStream fin=新文件InputStream(“dmproxy.pkg”);BufferedInputStream in=新的BufferedInputStream(fin);BZIP2压缩机输入流bzIn=新的BZIP2压缩机输入流(in);