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

 更新时间:2015年08月10日 14:51:57   作者:企鹅  
这篇文章主要介绍了python实现JAVA源代码从ANSI到UTF-8的批量转换方法,涉及Python针对文件操作与编码转换的相关技巧,需要的朋友可以参考下

本文实例讲述了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程序设计有所帮助。

相关文章

  • Scrapy框架使用的基本知识

    Scrapy框架使用的基本知识

    今天小编就为大家分享一篇关于Scrapy框架使用的基本知识,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • 对python实现二维函数高次拟合的示例详解

    对python实现二维函数高次拟合的示例详解

    今天小编就为大家分享一篇对python实现二维函数高次拟合的示例详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • 深入浅析ImageMagick命令执行漏洞

    深入浅析ImageMagick命令执行漏洞

    ImageMagick是一个功能强大的开源图形处理软件,可以用来读、写和处理超过90种的图片文件,包括流行的JPEG、GIF、 PNG、PDF以及PhotoCD等格式。接下来通过本文给大家浅析ImageMagick命令执行漏洞的知识,一起看看吧
    2016-10-10
  • Python自动化部署工具Fabric的简单上手指南

    Python自动化部署工具Fabric的简单上手指南

    这篇文章主要介绍了Python自动化部署工具Fabric的简单上手指南,涵盖Fabric的安装、fabric的远程操作与维护等方面,需要的朋友可以参考下
    2016-04-04
  • 提升Python运行速度的5个小技巧

    提升Python运行速度的5个小技巧

    这篇文章主要为大家介绍了Python提升运行速度的几个小技巧,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-12-12
  • 在Pandas中使用透视表后去掉多级索引的方法

    在Pandas中使用透视表后去掉多级索引的方法

    Pandas是一个功能强大且通用的Python库,用于数据操作和分析,它最有用的特性之一是数据透视表,它允许您重塑和汇总数据,但是,使用数据透视表通常会导致多级(分层)索引,在本文中,我们将探讨如何在Pandas中使用透视表后去掉多级索引,需要的朋友可以参考下
    2024-12-12
  • Tensorflow实现神经网络拟合线性回归

    Tensorflow实现神经网络拟合线性回归

    这篇文章主要为大家详细介绍了Tensorflow实现神经网络拟合线性回归,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-07-07
  • Python实现的多线程http压力测试代码

    Python实现的多线程http压力测试代码

    这篇文章主要介绍了Python实现的多线程http压力测试代码,结合实例形式分析了Python多线程操作的相关实现技巧,需要的朋友可以参考下
    2017-02-02
  • Python数据结构与算法之列表(链表,linked list)简单实现

    Python数据结构与算法之列表(链表,linked list)简单实现

    这篇文章主要介绍了Python数据结构与算法之列表(链表,linked list)简单实现,具有一定参考价值,需要的朋友可以了解下。
    2017-10-10
  • 在Mac中配置Python虚拟环境过程解析

    在Mac中配置Python虚拟环境过程解析

    这篇文章主要介绍了在Mac中配置Python虚拟环境过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06

最新评论