Heim >Backend-Entwicklung >Python-Tutorial >In Python geschriebenes Dateitranskodierungs-Gadget

In Python geschriebenes Dateitranskodierungs-Gadget

巴扎黑
巴扎黑Original
2017-04-01 15:04:041707Durchsuche

Source Insight unterstützt UTF-8 nicht. Um die chinesische Anzeige zu unterstützen, habe ich ein Python-Applet geschrieben, um alle Dateien in einem Verzeichnis von UTF-8 nach GBK zu konvertieren.

Das Der Code lautet wie folgt:

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

Source Insight unterstützt UTF-8 nicht. Um die chinesische Anzeige zu unterstützen, habe ich dieses Programm geschrieben

Konvertieren Sie alle Dateien in einem bestimmten Verzeichnis von UTF-. 8 Der Code ist 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)

Das Obige ist der Inhalt des in Python geschriebenen Dateitranskodierungs-Gadgets. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn