有没有办法以编程方式在android 1.6中解压缩rar文件?
我已经尝试过JUNRAR,但有一些例外情况…
这是我的代码,使用junrar库成功打开rar文件后:
FileHeader fh=null;
while(true)
{
fh=rar.nextFileHeader();
if(fh==null) return false;
if(fh.isEncrypted()) continue;
//check file
if(!fh.isDirectory() && fh.getFileNameString().toLowerCase().endsWith(".jpg"))
{
try
{
File f=new File(tmppath+covername); //name of the destination file
OutputStream stream = new FileOutputStream(f);
rar.extractFile(fh, stream); //call junrar
stream.close();
return true;
}
catch (FileNotFoundException e1)
{
// TODO Auto-generated catch block
return false;
}
catch (RarException e)
{
// TODO Auto-generated catch block
return false;
}
catch (IOException e)
{
// TODO Auto-generated catch block
return false;
}
}
DDMS透视图显示此异常…?
ERROR/AndroidRuntime(2733): Uncaught handler: thread Thread-9 exiting due to uncaught exception
ERROR/AndroidRuntime(2733): java.lang.VerifyError: de.innosystec.unrar.unpack.ppm.SubAllocator
ERROR/AndroidRuntime(2733): at de.innosystec.unrar.unpack.ppm.ModelPPM.(ModelPPM.java:73)
ERROR/AndroidRuntime(2733): at de.innosystec.unrar.unpack.Unpack.(Unpack.java:43)
ERROR/AndroidRuntime(2733): at de.innosystec.unrar.Archive.doExtractFile(Archive.java:456)
ERROR/AndroidRuntime(2733): at de.innosystec.unrar.Archive.extractFile(Archive.java:440)
ERROR/AndroidRuntime(2733): at com.pmc.myRar.unrarCover(myRar.java:164)
ERROR/AndroidRuntime(2733): at com.pmc.myDataBase.addRar(myDataBase.java:541)
ERROR/AndroidRuntime(2733): at com.pmc.libraryActivity.addtoDB(libraryActivity.java:306)
ERROR/AndroidRuntime(2733): at com.pmc.libraryActivity$2.run(libraryActivity.java:240)
ERROR/AndroidRuntime(2733): at java.lang.Thread.run(Thread.java:1060)
谢谢,
pmc
解决方法:
您遇到了java.lang.Verify错误,很难确定.该库是否有源代码可以自己重新编译?该库可能是使用另一个jar的不同版本编译的.
解决方法:
标签:android
来源: https://codeday.me/bug/1102/1993221.html