关于文件的压缩与解压
时间:2022-05-06
本文章向大家介绍关于文件的压缩与解压,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1 #coding:utf-8
2 import tarfile
3 import zipfile
4 import rarfile
5 import os
6 import shutil
7 class parsePackage:
8 def __init__(self):
9 self.funcMap={'tar':self.untar,
10 'zip':self.unzip,
11 'rar':self.unrar,
12 'gz':self.untar}
13 def parse(self,fname,dirs):
14 try:
15 pkg_type = fname.split('.')[-1]
16 if self.funcMap.get(pkg_type) is None:
17 print "%s is not exist", pkg_type
18 return -1
19 self.funcMap[pkg_type](fname, dirs)
20 except Exception ,e:
21 print e
22 return dirs #解压文件路径
23
24 def untar(self,fname, dirs):
25 try:
26 t = tarfile.open(fname)
27 t.extractall(path=dirs)
28 except Exception ,e:
29 print e
30
31
32 def unzip(self,fname, dirs):
33 try:
34 f = zipfile.ZipFile(fname, 'r')
35 for file in f.namelist():
36 print dirs.split('/')[-1] + '/'
37 f.extract(file, dirs.split('/')[-1] + '/')
38 except Exception ,e:
39 print e
40
41 def unrar(self,fname, dirs):
42 try:
43 file = rarfile.RarFile(fname)
44 file.extractall(dirs)
45 except Exception,e:
46 print e
47
48 def tar(self,fname):
49 t = tarfile.open(fname + ".tar.gz", "w:gz")
50 for root, dir, files in os.walk(fname):
51 print root, dir, files
52 for file in files:
53 fullpath = os.path.join(root, file)
54 t.add(fullpath)
55 t.close()
56 root_dest_path=os.path.join('./tools/static',fname.split('/')[-1])+'.tar.gz'
57 shutil.move(fname + ".tar.gz", root_dest_path)
58
59 return root_dest_path
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法