Maison >développement back-end >Tutoriel Python >python写的文件转码小工具

python写的文件转码小工具

巴扎黑
巴扎黑original
2017-04-01 15:04:041709parcourir

source insight竟然不支持utf-8,为支持中文显示,故写一python小程序将某个目录下所有文件全部从utf-8转码为gbk

代码如下:

#!/usr/local/bin/python
# -*- coding: utf-8 -*-
'''

source insight竟然不支持utf-8,为支持中文显示,故写该程序

将某个目录下所有文件全部从utf-8转码为gbk

usage: chmod +x convert.py
./convert.py src mysrc
'''
import os
import shutil
import re
import sys
 
#####################################
def search(src,dest,handler):
    filelist=os.listdir(src)
    for f in filelist:
        cf=src+'/'+f
        df=dest+'/'+f
        if os.path.isdir(cf):
   if not os.path.exists(df):
os.makedirs(df)
            search(cf,df,handler)
        else:
            handler(cf,df)#the function dealing with file
##########################################################
 
def convertFile(sfn,dfn):    
    sf=open(sfn,'r')
    s=sf.read()
    try:
        s=s.decode('utf-8')
        df=open(dfn,'w')
        df.write(s.encode('gbk'))
        df.flush()
        sf.close()
        df.close()
                
        print '*** ',sfn
    except:
        sf.close()
        print sfn
        sys.exit()
            
 
if name == 'main':
srcDir=os.getcwd()+'/'+sys.argv[1]
dstDir=os.getcwd()+'/'+sys.argv[2]
search(srcDir,dstDir,convertFile)

 以上就是python写的文件转码小工具的内容,更多相关内容请关注PHP中文网(www.php.cn)!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Python程序的执行原理Article suivant:Python 数据库相关操作