java解压rar|An unexpected error has been detected by Java Runtime Environment:

HappyKeKe 2010-08-13 03:16:13
java解压rar文件出错

public void unRarFile(String rarFileName,String extPlace)
{
Archive archive = null;
File out = null;
File file = null;
File dir = null;
FileOutputStream os = null;
FileHeader fh = null;
String path, dirPath = "";
try
{
file = new File(rarFileName);
System.out.println("file.getName = "+file.getName());
archive = new Archive(file);
}
catch (RarException e1)
{
e1.printStackTrace();
}
catch (IOException e1)
{
e1.printStackTrace();
}
finally
{
if (file != null)
{
file = null;
}
}
if (archive != null)
{
try
{
fh = archive.nextFileHeader();
while (fh != null)
{
path = (extPlace + fh.getFileNameString().trim()).replaceAll("\\\\", "/");
int end = path.lastIndexOf("/");
if (end != -1)
{
dirPath = path.substring(0, end);
}
try
{
dir = new File(dirPath);
if (!dir.exists())
{
dir.mkdirs();
}
}
catch (RuntimeException e1)
{
e1.printStackTrace();
}
finally
{
if (dir != null)
{
dir = null;
}
}
if (fh.isDirectory())
{
fh = archive.nextFileHeader();
continue;
}

out = new File(extPlace + fh.getFileNameString().trim());
try
{
os = new FileOutputStream(out);
archive.extractFile(fh, os);
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (RarException e)
{
e.printStackTrace();
}
finally
{
if (os != null)
{
try
{
os.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
if (out != null)
{
out = null;
}
}
fh = archive.nextFileHeader();
}
}
catch (RuntimeException e)
{
e.printStackTrace();
}
finally
{
fh = null;
if (archive != null)
{
try
{
archive.close();
} catch (IOException e)
{
e.printStackTrace();
}
}
}
}
}

错误如下

2010-6-16 15:13:56 de.innosystec.unrar.Archive setFile
警告: exception in archive constructor maybe file is encrypted or currupt
java.lang.NullPointerException
at de.innosystec.unrar.Archive.readHeaders(Archive.java:233)
at de.innosystec.unrar.Archive.setFile(Archive.java:122)
at de.innosystec.unrar.Archive.<init>(Archive.java:106)
at de.innosystec.unrar.Archive.<init>(Archive.java:96)
at ZipManager.unRarFile(ZipManager.java:371)
at ZipManager.main(ZipManager.java:490)


调试的时候出现下面这个是什么
[code=Java][
#
# An unexpected error has been detected by Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x6da669a2, pid=1752, tid=3944
#
# Java VM: Java HotSpot(TM) Client VM (11.3-b02 mixed mode windows-x86)
# Problematic frame:
# V [jvm.dll+0x1b69a2]
#
# An error report file with more information is saved as:
# E:\exercise\zip\hs_err_pid1752.log
#
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
#
/code]
先前在别的地方用都好的 不知道什么原因 大侠请帮忙啊
...全文
246 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
HappyKeKe 2010-08-23
  • 打赏
  • 举报
回复
杯具。。。

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧