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
陳東
閱讀(3296)
評論(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 © 陳東
主站蜘蛛池模板:
荥经县
|
阜城县
|
辽源市
|
南投市
|
宁陵县
|
长顺县
|
华亭县
|
武川县
|
通辽市
|
额敏县
|
民乐县
|
长顺县
|
平阴县
|
安新县
|
沽源县
|
苍山县
|
宁波市
|
甘德县
|
罗定市
|
奈曼旗
|
巴南区
|
绥化市
|
德令哈市
|
桐庐县
|
梧州市
|
屯门区
|
上饶县
|
昌江
|
平乡县
|
益阳市
|
于田县
|
河北省
|
兴城市
|
丰镇市
|
海兴县
|
新兴县
|
许昌市
|
绍兴县
|
军事
|
兴仁县
|
永州市
|