最后怎么解决的,我现在也遇到这个问题了,单个文件可以解压可以压缩,写入的测试内容也在,换成文件夹就不行了。能找到的案例全都是解压成文件,但是本身是个文件夹的GZ包解压了以后也打不开。
import javaioIOException;
import javautilEnumeration;
import javautilzipZipEntry;
/
获得zip文件里的所有文件
@author Administrator
/
public class ZipFile {
public ZipFile() throws IOException
{
javautilzipZipFile zf = new javautilzipZipFile("E:/Java/Projectzip");
Enumeration e = zfentries();
while(ehasMoreElements())
{
ZipEntry ze = (ZipEntry) enextElement();
if(!zeisDirectory())
Systemoutprintln(new String(zegetName()getBytes("ISO-8859-1"), "GB2312"));
}
}
public static void main(String[] args) {
try {
new ZipFile();
} catch (IOException e) {
eprintStackTrace();
}
}
}
上次利用java自动的javautilzipZipEntry和�0�2javautilzipZipFile来解压zip文件,今天发现程序在读取解压文件时居然报了空指针异常,debug程序后发现时读取不到文件,产生原先是zip压缩文件中含有中文的名称,读取文件名为乱码,
报找不到文件名,所以报了空指针,想到ant构建文件也有这个功能,换了apache的antjar居然解决了中文的问题。
备份下。
�0�2import javaioBufferedReader;
import javaioFile;
import javaioIOException;
import javaioInputStreamReader;
import javautilEnumeration;
import orgapachetoolszipZipEntry;
import orgapachetoolszipZipFile;/ 读取zip压缩文件中文本的内容
@author fish/public class ReadZip {
public static void main(String args[]) {try {String fileName = "D:/workspace/java/src/ReadZipzip";
//构造ZipFile
ZipFile zf = new ZipFile(new File(fileName));
//返回 ZIP file entries的枚举
Enumeration< extends ZipEntry entries = zfgetEntries();
while (entrieshasMoreElements()) {
ZipEntry ze = entriesnextElement();
Systemoutprintln("name:"+zegetName());
long size = zegetSize();
if (size 0) {
Systemoutprintln("Length is " + size);
BufferedReader br = new BufferedReader(
new InputStreamReader(zfgetInputStream(ze)));
String line;
while ((line = brreadLine()) != null) {
再 windows下通过 cmd命令执行解压缩没问题,但是通过 java代码去执行不能解压是为什么?我在开始运行中输入命令: cmd/ c rar exe x- y d:\\ auto rar d:\\----上面命令可以解压成功,但是通过下面 java代码不能实现解压缩功能,请指点。主要代码: java lang Runtime getRuntime() exec(" cmd/ c rar exe x- y d:\\ auto rar d:\\");
再 windows下通过 cmd命令执行解压缩没问题,但是通过 java代码去执行不能解压是为什么?我在开始运行中输入命令: cmd/ c rar exe x- y d:\\ auto rar d:\\----上面命令可以解压成功,但是通过下面 java代码不能实现解压缩功能,请指点。主要代码: java lang Runtime getRuntime() exec(" cmd/ c rar exe x- y d:\\ auto rar d:\\");
以上就是关于java里怎么解压tar.gz文件啊,网上好多例子都不行全部的内容,包括:java里怎么解压tar.gz文件啊,网上好多例子都不行、java解压zip文件、如何解决java程序解压含有中文名的zip压缩包出现乱码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)