Chinaunix首页 | 论坛 | 博客
  • 博客访问: 497095
  • 博文数量: 74
  • 博客积分: 750
  • 博客等级: 军士长
  • 技术积分: 1453
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-29 15:59
文章分类
文章存档

2014年(30)

2013年(8)

2012年(36)

分类: Python/Ruby

2014-01-10 09:19:22

python编码一般中文都是用的'utf8'格式显示。
在source insight一般不支持这种格式的显示,但是我一般不主张修改其转发格式。
你可以中noteipad++这种编译器。一般挺挺好用的。
但是如果你长期是使用source insight。也可以使用转码方法,将utf8转为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)

阅读(2929) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~