源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

python实现批量转换文件编码(批转换编码示例)

  • 时间:2020-03-31 16:29 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:python实现批量转换文件编码(批转换编码示例)
[u]复制代码[/u] 代码如下:
# -*- coding:utf-8 -*- __author__ = 'walkskyer' import os import glob class Encoding:     def __init__(self):         #文件扩展名         self.ext = ".*"         #编码         self.srcEncoding=None         self.dstEncoding=None     def convertEncoding(self, content, srcEncoding=None, dstEncoding=None):         return content.decode(self.srcEncoding).encode(self.dstEncoding)     def processDirectory(self, args, dirname, filenames):         print 'Directory', dirname         for filename in filenames:             if not os.path.isdir(dirname+'/'+filename):                 if filename.endswith(self.ext) or self.ext == ".*":                     print ' File', filename                     self.f2f(dirname+'/'+filename)     def f2f(self, filepath, srcEncoding=None, dstEncoding=None):         try:             f1 = open(filepath, 'rb')             temp = f1.read()             f1.close()             f2 = open(filepath, 'wb')             f2.write(temp.decode(self.srcEncoding).encode(self.dstEncoding))             f2.close()             print '转码成功'         except Exception, e:             print e     def colectFileType(self, dirname, fileType):         for filename in glob.glob(r'*.'+fileType):             print filename     def setExt(self, ext):         if not ext.startswith('.'):             ext = "." + ext         self.ext = ext     def setSRC(self, encoding):         self.srcEncoding=encoding     def setDST(self, encoding):         self.dstEncoding=encoding if __name__ == '__main__':     obj = Encoding()     print u'请输入文件类型:'     obj.setExt(raw_input())     print u'请输入文件原始编码:'     obj.setSRC(raw_input())     print u'请输入文件目标类型:'     obj.setDST(raw_input())     """obj.setExt('html')     obj.setSRC('gbk')     obj.setDST('utf-8')"""     print u'请输入文件所在目录:'     path = raw_input()     os.path.walk(path, obj.processDirectory, None)
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部