- 相關(guān)推薦
JAVA認(rèn)證基礎(chǔ)知識:Java文件解壓縮示例
Java實(shí)現(xiàn)壓縮文件的解壓縮操作,缺點(diǎn)是壓縮文件內(nèi)不能含有文件名為中文的的文件,否則會出現(xiàn)如下錯誤:
Exception in thread "main" java.lang.IllegalArgumentException: MALFORMED
at java.util.zip.ZipCoder.toString(Unknown Source)
at java.util.zip.ZipInputStream.readLOC(Unknown Source)
at java.util.zip.ZipInputStream.getNextEntry(Unknown Source)
at com.javatest.techzero.gui.ZipFileDemo.main(ZipFileDemo.java:22)
代碼:
package com.javatest.techzero.gui;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import java.util.zip.ZipInputStream;
public class ZipFileDemo {
@SuppressWarnings("resource")
public static void main(String args[]) throws Exception {
File file = new File("d:" + File.separator + "test.zip");
File outFile = null;
ZipFile zipFile = new ZipFile(file);
ZipInputStream zipInput = new ZipInputStream(new FileInputStream(file));
ZipEntry entry = null;
InputStream input = null;
OutputStream out = null;
while ((entry = zipInput.getNextEntry()) != null) {
System.out.println("開始解壓縮" + entry.getName() + "文件。。。");
outFile = new File("d:" + File.separator + entry.getName());
if (!outFile.getParentFile().exists()) {
outFile.getParentFile().mkdir();
}
if (!outFile.exists()) {
outFile.createNewFile();
}
input = zipFile.getInputStream(entry);
out = new FileOutputStream(outFile);
int temp = 0;
while ((temp = input.read()) != -1) {
//System.out.println(temp);
out.write(temp);
}
input.close();
out.close();
}
System.out.println("Done!");
}
}
【JAVA認(rèn)證基礎(chǔ)知識:Java文件解壓縮示例】相關(guān)文章:
Java文件解壓縮示例08-21
JAVA認(rèn)證基礎(chǔ)知識:Java獲取當(dāng)前的系統(tǒng)時間06-08
Java認(rèn)證基礎(chǔ)知識:java字符串轉(zhuǎn)化整型問題07-21
JAVA認(rèn)證基礎(chǔ)知識:JavaNativeInterface學(xué)習(xí)小結(jié)07-08
JAVA認(rèn)證簡介10-02
SUN JAVA認(rèn)證介紹08-09
JAVA認(rèn)證考試細(xì)則06-10
java認(rèn)證考試介紹07-31
Java的基礎(chǔ)知識07-27