欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

python写的文件转码小工具

程序员文章站 2022-04-15 23:45:22
...
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)!