批量转换文件编码的python脚本

#!/usr/bin/python
import os,sys  
  
def convert( filename, in_enc = "GBK", out_enc="UTF8" ):  
    try:  
        print "convert " + filename,  
        content = open(filename).read()  
        new_content = content.decode(in_enc).encode(out_enc)  
        open(filename, ‘w‘).write(new_content)  
        print " done"  
    except:  
        print " error"  
  
def explore(dir):  
    for root, dirs, files in os.walk(dir):  
        for file in files:  
            path = os.path.join(root, file)  
            convert(path)  
  
def main():  
    for path in sys.argv[1:]:  
        if os.path.isfile(path):  
            convert(path)  
        elif os.path.isdir(path):  
            explore(path)  
  
if __name__ == "__main__":  
    main()
时间: 2024-08-09 13:02:34

批量转换文件编码的python脚本的相关文章

多线程批量转换文件编码, 从GBK, GB2312编码转换到UTF-8编码(Python)

# coding=utf-8 # author:Jeffrey Ma # version:0.1 # build 2 # created on:2015年3月31日 # description: 1. 批量转换文件编码,从GBK GB2312编码转换到UTF-8编码 # 2. 支持指定目录下所有的文件的转换,包括子目录中的文件 # 3. 支持检测原始编码,对已经是UTF-8编码的文件,不做转换 # 4. 支持只转换指定扩展名的编码 # 5. 支持多线程转换和控制台输出 # 6. 支持控制台显示线

使用windows命令和iconv.exe批量转换文件编码

iconv是知名的开源跨平台编码转换库,iconv.exe是iconv库在windows下的命令行工具,iconv.exe的一般用法:iconv.exe -f gbk -t utf-8 gbk.txt > utf-8.txt.其中 -f gbk 指明转换前的文件编码是gbk,-t utf-8 指明转换后的文件编码是utf-8,gbk.txt 是转换前文件的名称,> utf-8.txt指明把转换结果输出到utf-8.txt文件中. 当我们要转换大量文件时,我们可以结合windows命令和icon

CAD转换器中批量转换文件的操作步骤是什么?

CAD转换器中批量转换文件的操作步骤是什么?现在在CAD行业当中,最基础的工作就是绘制CAD图纸,然后绘制完成的图纸都是dwg格式的,所以在进行查看的时候就需要将CAD图纸的格式进行转换,那在CAD转换器中批量转换文件的操作步骤是什么?具体要怎么来进行操作,想要了解的朋友就一起来看看吧,希望能够帮助到你们.以下就是具体操作步骤. 第一步:首先如果小伙伴们电脑中没有安装CAD转换器的,可以在电脑桌面中任意的打开一个浏览器,在浏览器的搜索框中搜索迅捷CAD转换器,点击进入到下载软件的界面当中,选择下

Linux系统下转换文件编码的方法

1.利用iconv命令进行文件内容编码转换      用法: iconv [选项...] [文件...] 有如下选项可用: 输入/输出格式规范:-f, --from-code=名称 原始文本编码-t, --to-code=名称 输出编码 信息:-l, --list 列举所有已知的字符集 输出控制:-c 从输出中忽略无效的字符-o, --output=FILE 输出文件-s, --silent 关闭警告--verbose 打印进度信息 -?, --help 给出该系统求助列表--usage 给出简

Linux 如何查看文件编码格式及转换文件编码

常常在Linux中操作windows下的文件时,会遇到乱码的情形.常见的比如在Visual Studio 中写的C\C++程序需要放到Linux主机上编译,而程序的中文注释则显示为乱码,比较严重的是由于编码原因,linux上的编译器报错.这是由于Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8.那么如何在Linux中如何查看文件的编码及如何进行对文件进行编码转换呢? 用VIM查看文件编码 在Vim 中可以直接查看文件编码 :set fileencoding即

java实现 批量转换文件编码格式为UTF8

需要注意点: 建议转换前备份,如果有的项目原本就是UTF-8,执行完成后就会乱码 补救办法是:把项目从UTF-8转换成GBK,不乱码了,但是有后遗症,虽然大部分都救回来了,但是不知道某个字符就变成?了 1.首先需要引用java工具包hutool,官网 https://hutool.cn/ <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> &l

Linux批量转换gbk编码文件到utf8编码

欢迎访问博客: www.findspace.name 一单个文件: iconv -f gbk -t utf8 -c camera.c >carmera.c 二批量文件脚本: for i in * do if test -f $i then iconv -f gbk -t utf8 $i -o /tmp/$i.new cp /tmp/$i.new $i rm /tmp/$i.new fi done 保存为run.sh文件,并加上执行权限 chmod a+x run.sh然后执行即可

Shell脚本批量修改文件编码为UTF-8

主要使用iconv cat b |while read line do iconv -f gbk -t utf8 $line > a [[ $? -ne 0 ]] && { echo $line } mv a $line done b文件中存放着需要修改的文件路径 可多个文件路径,每行一条路径 原文地址:https://www.cnblogs.com/hkgov/p/12573846.html

eclipse、MyEclipse实现批量改动文件编码

在使用eclipse或MyEclipse编程时,常常遇到部分文件打开后出现乱码的情况(特别是在导入项目后) 1:右击项目选择properties->Resource>Other选择UTF-8,apply->Ok就可以 这样的方式一般仅仅是改变java文件的编码 2:Windows -> Preferences -> General -> Content Types 在右边的窗体中点击"text"选择 JSP -> Default Encodin