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
陳東
閱讀(3295)
評論(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 © 陳東
主站蜘蛛池模板:
龙州县
|
新平
|
株洲市
|
阿合奇县
|
五华县
|
通化市
|
惠来县
|
江川县
|
曲靖市
|
五原县
|
碌曲县
|
雅安市
|
龙海市
|
汽车
|
兴山县
|
蛟河市
|
仲巴县
|
福州市
|
屯留县
|
资中县
|
博客
|
闽侯县
|
嘉鱼县
|
眉山市
|
山西省
|
盘山县
|
汝州市
|
武穴市
|
龙里县
|
安宁市
|
白玉县
|
千阳县
|
疏附县
|
东光县
|
抚顺县
|
神池县
|
阿拉善左旗
|
枣阳市
|
永吉县
|
姚安县
|
略阳县
|