Java on Line
和java的日子!
BlogJava
::
首頁
::
新隨筆
::
聯系
::
聚合
::
管理
::
8 隨筆 :: 0 文章 :: 28 評論 :: 0 Trackbacks
<
2007年8月
>
日
一
二
三
四
五
六
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
公告
謝謝您的關注!!!
留言簿
(1)
給我留言
查看公開留言
查看私人留言
隨筆分類
(8)
Java基礎(5)
(rss)
Java收集
(rss)
個人隨筆(1)
(rss)
開發收集(2)
(rss)
隨筆檔案
(8)
2008年4月 (2)
2008年3月 (1)
2007年10月 (1)
2007年9月 (1)
2007年8月 (3)
相關連接
expert
struts2學習
Sun中國技術社區
我的Blog
日期控件
搜索
最新評論
1.?re: 用java壓縮文件夾/文件
YASUO
--XURUIYANG
2.?re: 用java壓縮文件夾/文件
壓縮文件夾時,有問題吧,會多出一個文件夾來。
--路人
3.?re: 用java壓縮文件夾/文件
@ne_akari
你個二逼,自己好好看看再說
--路人
4.?re: 用java刪除文件夾里的所有文件[未登錄]
thanks.
--tao
5.?寫的真不錯
寫的真不錯,代碼拿出來就能執行,感謝感謝啊!
--沈坤林
用java解壓文件夾
import
java.io.File;
import
java.io.FileInputStream;
import
java.io.FileNotFoundException;
import
java.io.FileOutputStream;
import
java.io.IOException;
import
java.util.zip.ZipEntry;
import
java.util.zip.ZipInputStream;
import
java.util.zip.ZipOutputStream;
/** */
/**
* 使用java核心類庫打包、解包zip文件,不足之處在于壓縮中文名的文件時,在壓縮包內中文字符是亂碼,
* 在windows下解壓后編碼正常顯示中文,而其他系統下則不能正常還原;
*/
public
class
TestZip
{
/** */
/**
* 定義解壓縮zip文件的方法
*
@param
zipFileName
*
@param
outputDirectory
*/
public
void
unzip(String zipFileName, String outputDirectory)
{
try
{
ZipInputStream in
=
new
ZipInputStream(
new
FileInputStream(zipFileName));
//
獲取ZipInputStream中的ZipEntry條目,一個zip文件中可能包含多個ZipEntry,
//
當getNextEntry方法的返回值為null,則代表ZipInputStream中沒有下一個ZipEntry,
//
輸入流讀取完成;
ZipEntry z
=
in.getNextEntry();
while
(z
!=
null
)
{
System.out.println(
"
unziping
"
+
z.getName());
//
創建以zip包文件名為目錄名的根目錄
File f
=
new
File(outputDirectory);
f.mkdir();
if
(z.isDirectory())
{
String name
=
z.getName();
name
=
name.substring(
0
, name.length()
-
1
);
System.out.println(
"
name
"
+
name);
f
=
new
File(outputDirectory
+
File.separator
+
name);
f.mkdir();
System.out.println(
"
mkdir
"
+
outputDirectory
+
File.separator
+
name);
}
else
{
f
=
new
File(outputDirectory
+
File.separator
+
z.getName());
f.createNewFile();
FileOutputStream out
=
new
FileOutputStream(f);
int
b;
while
((b
=
in.read())
!=
-
1
)
{
out.write(b);
}
out.close();
}
//
讀取下一個ZipEntry
z
=
in.getNextEntry();
}
in.close();
}
catch
(Exception e)
{
//
TODO 自動生成 catch 塊
e.printStackTrace();
}
}
public
static
void
main(String[] args)
throws
Exception
{
TestZip t
=
new
TestZip();
t.unzip(
"
c:/a.zip
"
,
"
c:/b
"
);
//
解壓C盤下的a.zip文件放到C盤下的b文件夾里
//
一定要注意a.zip文件要經java程序壓縮出來的文件,這個程序才可以解壓
}
}
posted on 2007-08-24 16:29
陳東
閱讀(3302)
評論(3)
編輯
收藏
所屬分類:
Java基礎
評論
#
re: 用java解壓文件夾
2008-07-02 19:59
1111111
錯誤的
回復
更多評論
#
re: 用java解壓文件夾
2008-10-06 19:41
re
非常好用,頂
回復
更多評論
#
re: 用java解壓文件夾
2009-02-13 12:25
huzheng
就是太慢!!!請問怎樣才能快點!!!
回復
更多評論
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
JDBC連接各種數據庫方法
將一個字符串里的數字,分割后進行排序
用java刪除文件夾里的所有文件
用java解壓文件夾
用java壓縮文件夾/文件
Powered by:
BlogJava
Copyright © 陳東
主站蜘蛛池模板:
吉林省
|
永嘉县
|
香格里拉县
|
平遥县
|
留坝县
|
锦屏县
|
缙云县
|
广宁县
|
蕉岭县
|
淮阳县
|
萍乡市
|
突泉县
|
宿迁市
|
吕梁市
|
云林县
|
景宁
|
平利县
|
汉中市
|
新丰县
|
安平县
|
宜昌市
|
克拉玛依市
|
区。
|
梅河口市
|
吴旗县
|
二连浩特市
|
岗巴县
|
静安区
|
夏津县
|
长白
|
大安市
|
芜湖县
|
昭苏县
|
桃园县
|
额济纳旗
|
镇平县
|
驻马店市
|
定安县
|
禄丰县
|
乌兰县
|
佛学
|