自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

軟件開發(fā)工具推薦:ZeroTurnaround ZIP類庫

開發(fā) 后端
在Java平臺上有很多官方的和非官方、第三方的壓縮工具包,它們各有各的長處,比如Oracle官方的java.util.zip 類庫,Apache網(wǎng)站上的Apache Commons Compress 類庫,或者Chilkat Java Zip 類庫,但總體說來,這些類庫提供都是低級別的API,操作起來都不是很方便。

在Java平臺上有很多官方的和非官方、第三方的壓縮工具包,它們各有各的長處,比如Oracle官方的java.util.zip 類庫,Apache網(wǎng)站上的Apache Commons Compress 類庫,或者Chilkat Java Zip 類庫,但總體說來,這些類庫提供都是低級別的API,操作起來都不是很方便,而今天推薦給大家的這個叫做ZeroTurnaround(簡稱zt-zip)的壓縮類庫的特點就是方便、簡易,我們可以比較一下,如果用標準的Java類庫壓縮一個目錄里的所有文件,你需要寫出的代碼大概是這樣:

  1. File dir = new File("demo"); 
  2. ZipOutputStream out = new ZipOutputStream(new FileOutputStream("demo.zip")); 
  3. try { 
  4.   File[] files = dir.listFiles(); 
  5.   for (int i = 0; i < files.length; i++) { 
  6.     File file = files[i]; 
  7.     ZipEntry entry = new ZipEntry(file.getName()); 
  8.     entry.setSize(file.length()); 
  9.     entry.setTime(file.lastModified()); 
  10.     out.putNextEntry(entry); 
  11.     FileInputStream in = new FileInputStream(file); 
  12.     try { 
  13.       IOUtils.copy(in, out); 
  14.     } finally { 
  15.       IOUtils.closeQuietly(in); 
  16.     } 
  17.     out.closeEntry(); 
  18.   } 
  19. finally { 
  20.   IOUtils.closeQuietly(out); 

而使用zt-zip工具包,你的代碼就變成了只有一行:

  1. ZipUtil.pack(new File("demo"), new File("demo.zip")); 

你不需要自己去關(guān)閉文件的數(shù)據(jù)流,這個類庫的接口自動替你你做了這些。

可能經(jīng)常做Java壓縮編程的人會提到另外一個壓縮類庫:TrueZIP,這也是一個非常好的類庫,而zt-zip跟它比起來的一個優(yōu)勢是:消耗內(nèi)存很少,這是因為TrueZIP大量的使用了虛擬機的堆內(nèi)存,而zt-zip卻是只是以數(shù)據(jù)流的形式進行操作,當然這也是zt-zip的API提供的功能很有針對性、不是TrueZIP API那樣通用的原因。

你可以在Github上下載這個類庫。

原文鏈接:http://www.aqee.net/development-tools-zt-zip/

【編輯推薦】

  1. Apache UIMA Java SDK 2.4.0 發(fā)布 附下載
  2. Argparse4j 0.2 發(fā)布 Java命令行解析庫
  3. Sanaware Java Docking 1.5.0 發(fā)布 附下載
  4. JavaMelody 1.33.0 發(fā)布 Java應(yīng)用監(jiān)控
  5. Java應(yīng)用服務(wù)器 Eclipse Virgo 3.0.2發(fā)布
責任編輯:林師授 來源: 外刊IT評論
相關(guān)推薦

2011-12-29 09:06:45

軟件

2012-02-07 09:07:37

firefox

2014-04-28 09:35:19

紅帽開源軟件

2020-05-31 14:02:50

人工智能開發(fā)工具

2010-03-16 09:41:57

Windows Pho

2019-12-26 09:52:40

工具代碼開發(fā)

2013-11-21 10:21:25

2010-06-04 17:26:53

Linux 開發(fā)工具

2010-09-17 10:18:59

ODTOPhone

2013-04-27 15:13:23

跨平臺

2010-07-06 15:30:12

RationalJazz

2011-08-05 14:34:13

2014-04-02 09:03:39

紅帽

2010-05-25 13:28:17

WinSDK 7.1.NETWindow 7

2019-04-23 13:51:43

程序員技能開發(fā)者

2010-07-14 13:57:30

Perl開發(fā)工具

2010-05-28 13:38:29

Linux開發(fā)工具

2021-02-05 23:23:55

Web開發(fā)工具

2014-05-06 10:14:07

Bootstrap前端工具

2011-05-11 09:03:33

javascript開發(fā)工具
點贊
收藏

51CTO技術(shù)棧公眾號