Rumah >pembangunan bahagian belakang >Tutorial Python >python写的文件转码小工具

python写的文件转码小工具

巴扎黑
巴扎黑asal
2017-04-01 15:04:041758semak imbas

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)!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Python程序的执行原理Artikel seterusnya:Python 数据库相关操作