搜索
查看: 13841|回复: 25

[扩展库] 7zip格式解压缩

  [复制链接]

123

主题

1848

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
10309
发表于 2013-5-6 02:51:53 | 显示全部楼层 |阅读模式
sevenZip.decoder2扩展库使用的组件基于7Zip开源代码(LGPL许可、可免费使用, 大小约100KB ),示例:
  1. import console;
  2. import sevenZip.decoder2;
  3. import fsys.dlg;

  4. var archive = sevenZip.decoder2();
  5. archive.printError = function(name,message){
  6.         console.log("出错了", name,message )
  7. }

  8. if( !archive.open( fsys.dlg.open("7z压缩包|*.7z||") ) ){
  9.         console.log("打开压缩包出错");
  10.         return;
  11. }

  12. //列出所有文件
  13. for(i=1;archive.count() ){
  14.         io.print(
  15.                 archive.getItemString(i,3/*_kpidPath*/),
  16.                 archive.getItemBoolean(i,6/*_kpidIsDir*/),
  17.                 archive.getItemTime(i,0xC/*_kpidMTime*/),
  18.                 archive.getItemNumber(i,7/*_kpidSize*/),
  19.         )
  20. }

  21. archive.extractSetTotal = function(size){
  22.         io.print("压缩包大小",fsys.formatSize(size) )
  23. }

  24. archive.extractSetCompleted = function(lowSize,hiSize,percent){
  25.         io.print("已解压",fsys.formatSize(lowSize,hiSize)," %" + percent )
  26. }

  27. archive.extractPrepareOperation = function(askExtractMode,itemIndex,filepath,isDir){
  28.         console.log("正在解压",filepath)
  29. }
  30. archive.extractSetOperationResult = function(opRet){
  31.         if( opRet == 0/*kOK*/ ){
  32.        
  33.         }
  34.         elseif( opRet == 1/*kUnSupportedMethod*/ ){
  35.                 io.print("Unsupported Method")
  36.         }
  37.         elseif( opRet == 0/*kDataError*/ ){
  38.                 io.print("CRC Failed")
  39.         }
  40.         elseif( opRet == 0/*kCRCError*/ ){
  41.                 io.print("Data Error")
  42.         }
  43.         else {
  44.                 io.print("Unknown Error")
  45.         }
  46. }

  47. if( archive.extract( fsys.dlg.opendir(,,"请指定解压目录") ) ){
  48.         console.log("已完成所有操作")
  49. }
  50. else {
  51.         console.log("解压缩遇到错误")
  52. }
复制代码
压缩7z格式可参考帖子:
调用7z压缩解压缩( sevenZip.cmd 扩展库 )  

使用tar打包、lzma算法(7zip ) 的 tar.lzma 格式压缩解压:
http://bbs.aardio.com/thread-10417-1-1.html


1、论坛发贴请包含相关测试代码,代码写的不好没有关系,种种原因不能写代码、不愿写代码的问题自行解决。
2、BUG,意见建议请点击页面右上方链接提交。

违者罚!
回复

使用道具 举报

1

主题

10

帖子

3483

积分

五级会员

Rank: 8Rank: 8

积分
3483
发表于 2013-5-6 08:08:01 | 显示全部楼层

太棒了,谢谢老大! 老大,辛苦了!

太棒了,谢谢老大!
老大,辛苦了!
回复

使用道具 举报

0

主题

24

帖子

221

积分

二级会员

Rank: 3Rank: 3

积分
221
发表于 2013-5-6 08:38:24 | 显示全部楼层

一直在更新,支持

一直在更新,支持
回复

使用道具 举报

48

主题

267

帖子

1604

积分

荣誉会员

Rank: 8Rank: 8

积分
1604
发表于 2013-5-6 08:41:51 | 显示全部楼层

谢谢分享~!

谢谢分享~!
◆ 半醒半醉日复日,花落花开年复年 ◆
回复

使用道具 举报

6

主题

132

帖子

1094

积分

四级会员

Rank: 6Rank: 6

积分
1094
发表于 2013-5-6 08:50:41 | 显示全部楼层

谢谢老大的 分享!

谢谢老大的 分享!
静步
回复

使用道具 举报

8

主题

66

帖子

436

积分

二级会员

Rank: 3Rank: 3

积分
436
发表于 2013-5-6 09:47:27 | 显示全部楼层

谢谢老大的 分享!

谢谢老大的 分享!
回复

使用道具 举报

20

主题

325

帖子

1942

积分

荣誉会员

Rank: 8Rank: 8

积分
1942
发表于 2013-5-6 09:57:15 | 显示全部楼层

感谢分享

感谢分享
回复

使用道具 举报

7

主题

302

帖子

1893

积分

四级会员

Rank: 6Rank: 6

积分
1893
QQ
发表于 2013-5-6 11:00:56 | 显示全部楼层

感谢分享!

感谢分享!
回复

使用道具 举报

8

主题

18

帖子

194

积分

一级会员

Rank: 2

积分
194
发表于 2013-5-6 12:27:44 | 显示全部楼层

老大给力!愿与aardio一起成长。

老大给力!愿与aardio一起成长。
回复

使用道具 举报

9

主题

79

帖子

1000

积分

荣誉会员

Rank: 8Rank: 8

积分
1000
发表于 2013-5-6 12:37:12 | 显示全部楼层

7z是个好格式

7z是个好格式
回复

使用道具 举报

16

主题

186

帖子

1403

积分

四级会员

Rank: 6Rank: 6

积分
1403
发表于 2013-5-7 13:35:12 | 显示全部楼层

谢谢老大分享

谢谢老大分享
回复

使用道具 举报

3

主题

20

帖子

149

积分

一级会员

Rank: 2

积分
149
发表于 2013-5-7 21:22:26 | 显示全部楼层

有了这个下载安装文件就方便多了。

有了这个下载安装文件就方便多了。
回复

使用道具 举报

0

主题

2

帖子

155

积分

一级会员

Rank: 2

积分
155
发表于 2013-5-27 10:21:19 | 显示全部楼层

感谢分享啊。。。。

感谢分享啊。。。。
回复

使用道具 举报

39

主题

195

帖子

1269

积分

四级会员

Rank: 6Rank: 6

积分
1269
发表于 2013-5-28 23:17:24 | 显示全部楼层

好东西,顶老大

好东西,顶老大
回复

使用道具 举报

2

主题

48

帖子

1192

积分

四级会员

Rank: 6Rank: 6

积分
1192
QQ
发表于 2013-5-31 12:29:06 | 显示全部楼层

又有新东西加入了,感谢..

又有新东西加入了,感谢..
一曲且为梦中人..
回复

使用道具 举报

0

主题

1

帖子

93

积分

一级会员

Rank: 2

积分
93
发表于 2013-10-30 21:26:47 | 显示全部楼层

确实高人,太好用了

确实高人,太好用了
回复

使用道具 举报

0

主题

12

帖子

77

积分

一级会员

Rank: 2

积分
77
发表于 2014-3-21 10:11:10 | 显示全部楼层

老大教程好啊,学习下扩展库的使用

老大教程好啊,学习下扩展库的使用
回复

使用道具 举报

4

主题

26

帖子

218

积分

二级会员

Rank: 3Rank: 3

积分
218
QQ
发表于 2015-4-21 16:55:06 | 显示全部楼层

学习了,再次支持

学习了,再次支持
回复

使用道具 举报

0

主题

1

帖子

9

积分

新手入门

Rank: 1

积分
9
发表于 2015-5-31 13:41:09 | 显示全部楼层

楼主辛苦了..多谢..................

楼主辛苦了..多谢..................
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|站长邮箱|aardio.com|aardio官方社区 ( 皖ICP备09012014号 )

GMT+8, 2017-11-23 21:02 , Processed in 0.109375 second(s), 25 queries , WinCache On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表