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 相关文章推荐
对pandas写入读取h5文件的方法详解
Dec 28 Python
Python3.4学习笔记之类型判断,异常处理,终止程序操作小结
Mar 01 Python
python实现文本进度条 程序进度条 加载进度条 单行刷新功能
Jul 03 Python
Django框架 查询Extra功能实现解析
Sep 04 Python
python 怎样将dataframe中的字符串日期转化为日期的方法
Sep 26 Python
python 实现按对象传值
Dec 26 Python
tensorflow 实现从checkpoint中获取graph信息
Feb 10 Python
Python实现多线程下载脚本的示例代码
Apr 03 Python
python实现数据结构中双向循环链表操作的示例
Oct 09 Python
python安装mysql的依赖包mysql-python操作
Jan 01 Python
Python调用高德API实现批量地址转经纬度并写入表格的功能
Jan 12 Python
Python3中最常用的5种线程锁实例总结
Jul 07 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用户注册时常用的检验函数实例总结
2014/12/22 PHP
Laravel 自动转换长整型雪花 ID 为字符串的实现
2020/10/27 PHP
PHP+Mysql分布式事务与解决方案深入理解
2021/02/27 PHP
node.js中使用node-schedule实现定时任务实例
2014/06/03 Javascript
jquery中map函数与each函数的区别实例介绍
2014/06/23 Javascript
javascript动态设置样式style实例分析
2015/05/13 Javascript
jquery实现适用于门户站的导航下拉菜单效果代码
2015/08/24 Javascript
jQuery实现鼠标悬停背景翻转的黑色导航菜单代码
2015/09/14 Javascript
jQuery插件Validation快速完成表单验证的方式
2016/07/28 Javascript
利用React-router+Webpack快速构建react程序
2016/10/27 Javascript
NodeJS配置HTTPS服务实例分享
2017/02/19 NodeJs
详解webpack 多入口配置
2017/06/16 Javascript
解决ie img标签内存泄漏的问题
2017/10/13 Javascript
Vue中UI组件库之Vuex与虚拟服务器初识
2019/05/07 Javascript
简单分析js中的this的原理
2019/08/31 Javascript
npm qs模块使用详解
2020/02/07 Javascript
python实现计算资源图标crc值的方法
2014/10/05 Python
python编码最佳实践之总结
2016/02/14 Python
轻松理解Python 中的 descriptor
2017/09/15 Python
Python金融数据可视化汇总
2017/11/17 Python
Python实现替换文件中指定内容的方法
2018/03/19 Python
python批量修改文件编码格式的方法
2018/05/31 Python
python for循环remove同一个list过程解析
2019/08/14 Python
解决python 文本过滤和清理问题
2019/08/28 Python
利用python绘制中国地图(含省界、河流等)
2020/09/21 Python
HTML5 Canvas 绘图——使用 Canvas 绘制图形图文教程 使用html5 canvas 绘制精美的图
2015/08/31 HTML / CSS
Roots加拿大官网:加拿大休闲服饰品牌
2016/10/24 全球购物
Topshop美国官网:英国快速时尚品牌
2019/05/16 全球购物
好人好事事迹材料
2014/02/12 职场文书
法律六进活动方案
2014/03/13 职场文书
大学生精神文明先进个人事迹材料
2014/05/02 职场文书
退休党员个人对照检查材料思想汇报
2014/09/29 职场文书
学校远程教育工作总结
2015/08/11 职场文书
小学语文教学反思范文
2016/03/03 职场文书
写好求职信的技巧解密
2019/05/14 职场文书
2019毕业论文致谢词
2019/06/24 职场文书