python实现JAVA源代码从ANSI到UTF-8的批量转换方法


Posted in Python onAugust 10, 2015

本文实例讲述了python实现JAVA源代码从ANSI到UTF-8的批量转换方法。分享给大家供大家参考。具体如下:

喜欢用eclipse的大神们,可能一不小心代码就变成ANSI码了,需要转换成utf-8嘛,一个文件一个文件的在Notepad2或者notepad++里面转换么?不,这里有批量转换的程序,python实现,需要的拿去用吧。

ansi2utf8.py:

#-*- coding: utf-8 -*-
import codecs
import os
import shutil
import re
import chardet
def convert_encoding(filename, target_encoding):
 # Backup the origin file.
 shutil.copyfile(filename, filename + '.bak')
 # convert file from the source encoding to target encoding
 content = codecs.open(filename, 'r').read()
 source_encoding = chardet.detect(content)['encoding']
 print source_encoding, filename
 content = content.decode(source_encoding) #.encode(source_encoding)
 codecs.open(filename, 'w', encoding=target_encoding).write(content)
def main():
 for root, dirs, files in os.walk(os.getcwd()):
  for f in files:
   if f.lower().endswith('.java'):
    filename = os.path.join(root, f)
    try:
     convert_encoding(filename, 'utf-8')
    except Exception, e:
     print filename
def process_bak_files(action='restore'):
 for root, dirs, files in os.walk(os.getcwd()):
  for f in files:
   if f.lower().endswith('.java.bak'):
    source = os.path.join(root, f)
    target = os.path.join(root, re.sub('\.java\.bak$', '.java', f, flags=re.IGNORECASE))
    try:
     if action == 'restore':
      shutil.move(source, target)
     elif action == 'clear':
      os.remove(source)
    except Exception, e:
     print source
if __name__ == '__main__':
 # process_bak_files(action='clear')
 main()

把程序拷贝到java源文件所在目录下运行就好了。

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python的多重继承的理解
Aug 06 Python
简单了解什么是神经网络
Dec 23 Python
基于anaconda下强大的conda命令介绍
Jun 11 Python
Python 16进制与中文相互转换的实现方法
Jul 09 Python
Python 读写文件的操作代码
Sep 20 Python
Python 运行 shell 获取输出结果的实例
Jan 07 Python
python list数据等间隔抽取并新建list存储的例子
Nov 27 Python
python 安装impala包步骤
Mar 28 Python
python判断正负数方式
Jun 03 Python
Python实现查找数据库最接近的数据
Jun 08 Python
python 基于pygame实现俄罗斯方块
Mar 02 Python
Python中的嵌套循环详情
Mar 23 Python
python用10行代码实现对黄色图片的检测功能
Aug 10 #Python
详解Python中dict与set的使用
Aug 10 #Python
分析并输出Python代码依赖的库的实现代码
Aug 09 #Python
python根据京东商品url获取产品价格
Aug 09 #Python
python制作一个桌面便签软件
Aug 09 #Python
Python 实现简单的电话本功能
Aug 09 #Python
python批量提取word内信息
Aug 09 #Python
You might like
PHP简介
2006/10/09 PHP
浅析虚拟主机服务器php fsockopen函数被禁用的解决办法
2013/08/07 PHP
详细分析PHP 命名空间(namespace)
2020/06/30 PHP
日期 时间js控件
2009/05/07 Javascript
利用javascript实现一些常用软件的下载导航
2009/08/03 Javascript
防止登录页面出现在frame中js代码
2014/07/22 Javascript
BAT及各大互联网公司2014前端笔试面试题--JavaScript篇
2014/10/29 Javascript
JavaScript将当前时间转换成UTC标准时间的方法
2015/04/06 Javascript
node.js调用C++开发的模块实例
2015/07/03 Javascript
js实现无缝滚动特效
2015/12/20 Javascript
详解Node.js中的事件机制
2016/09/22 Javascript
JavaScript之事件委托实例(附原生js和jQuery代码)
2017/07/22 jQuery
Angular CLI 使用教程指南参考小结
2019/04/10 Javascript
JS实现多功能计算器
2020/10/28 Javascript
JavaScript 防抖和节流遇见的奇怪问题及解决
2020/11/20 Javascript
[51:36]EG vs VP 2018国际邀请赛淘汰赛BO3 第一场 8.24
2018/08/25 DOTA
Python3 入门教程 简单但比较不错
2009/11/29 Python
操作Windows注册表的简单的Python程序制作教程
2015/04/07 Python
详解Python实现按任意键继续/退出的功能
2016/08/19 Python
Python使用matplotlib简单绘图示例
2018/02/01 Python
python实现人民币大写转换
2018/06/20 Python
解决Python运行文件出现out of memory框的问题
2018/12/03 Python
python输出数学符号实例
2020/05/11 Python
Python爬虫实例——爬取美团美食数据
2020/07/15 Python
Django 实现图片上传和下载功能
2020/12/31 Python
HTML5 canvas基本绘图之绘制线条
2016/06/27 HTML / CSS
蔻驰美国官网:COACH美国
2016/08/18 全球购物
孤独星球出版物:Lonely Planet Publications
2018/03/17 全球购物
美国时尚大码女装购物网站:Avenue
2019/05/24 全球购物
一套带答案的C++笔试题
2014/01/10 面试题
决心书标准格式
2014/03/11 职场文书
2014年惩防体系建设工作总结
2014/12/01 职场文书
西安事变观后感
2015/06/12 职场文书
疾病证明书
2015/06/19 职场文书
Vue+TypeScript中处理computed方式
2022/04/02 Vue.js
JS前端轻量fabric.js系列物体基类
2022/08/05 Javascript