精华内容
下载资源
问答
  • python批量修改txt文件,csv文件 编码格式 from os import listdir from chardet import detect fns = (fn for fn in listdir() if fn.endswith('.csv')) for fn in fns: with open(fn, 'rb+') as fp: content = ...

    python批量修改txt文件,csv文件 编码格式

    from os import listdir
    from chardet import detect
    
    fns = (fn for fn in listdir() if fn.endswith('.csv'))
    
    for fn in fns:
       with open(fn, 'rb+') as fp:
           content = fp.read()
           encoding = detect(content)['encoding']
           content = content.decode(encoding).encode('utf8')
           fp.seek(0)
           fp.write(content)
    

    批量改为utf-8编码

    转载于:https://blog.51cto.com/13000661/2129573

    展开全文
  • 由于第三方给出的csv编码格式问题导致无法导入指定的库表,网上找了许多转换的插件总是不满意。折腾了大半天想想还是自己改造下吧。该工具包解决了几乎所有的编码问题,若是不足之处请指出。由于文件暂存在String...

    由于第三方给出的csv编码格式问题导致无法导入指定的库表,网上找了许多转换的插件总是不满意。折腾了大半天想想还是自己改造下吧。该工具包解决了几乎所有的编码问题,若是不足之处请指出。由于文件暂存在String类型里面,要是文件太大的话会报内存溢出的错误可以自行调整下代码。

    
    
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.FilenameFilter;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.OutputStream;
    import java.io.OutputStreamWriter;
    import java.nio.charset.Charset;
    import java.nio.charset.UnsupportedCharsetException;
    
    public class FileCharsetConverter {  
    
        public static void main(String[] args) throws Exception { 
            String dirPath ="C:\\Users\\oftoo\\Desktop\\服务默认\\原编码\\xx\\xx";
            File dirFile = new File(dirPath);
            File[] files = dirFile.listFiles();
            if (null == files) {
              System.out.println("路径:" + dirPath + ",该文件夹下没有文件");
            } else {
                for (int i = 0; i < files.length; i++) {
                    File file = files[i];
                    String destFileName = file.getCanonicalPath();
                    File destFile = new File(destFileName);
                    if (destFile.exists()) {
                        convert(destFile.getCanonicalPath(),  
                            "UTF-16LE", "GBK", new FilenameFilter() {  
                                @Override  
                                public boolean accept(File dir, String name) {  
                                    return name.endsWith("csv");  
                                }  
                            });  
                    } else {
                        System.out.println("路径:" + dirPath + ",该文件夹下没有文件");
                    }
                }
                System.out.println("编码转换结束");
            }
    
            /*convert("C:\\Users\\xieyh\\Desktop\\测试编码\\LRL_HairStore_Tmall_Acxiom_Transaction_20170619.csv",  
                    "UTF-16LE", "GBK", new FilenameFilter() {  
                        @Override  
                        public boolean accept(File dir, String name) {  
                            return name.endsWith("csv");  
                        }  
                    });  */
    
        }  
    
        public static String getParentPath(File file) {
            if (null != file && file.exists()) {
                return file.getParent();
            }
            return "";
        }
    
        /** 
         * 把指定文件或目录转换成指定的编码 
         *  
         * @param fileName 
         *            要转换的文件 
         * @param fromCharsetName 
         *            源文件的编码 
         * @param toCharsetName 
         *            要转换的编码 
         * @throws Exception 
         */  
        public static void convert(String fileName, String fromCharsetName,  
                String toCharsetName) throws Exception {  
            convert(new File(fileName), fromCharsetName, toCharsetName, null);  
        }  
    
        /** 
         * 把指定文件或目录转换成指定的编码 
         *  
         * @param file 
         *            要转换的文件或目录 
         * @param fromCharsetName 
         *            源文件的编码 
         * @param toCharsetName 
         *            要转换的编码 
         * @throws Exception 
         */  
        public static void convert(File file, String fromCharsetName,  
                String toCharsetName) throws Exception {  
            convert(file, fromCharsetName, toCharsetName, null);  
        }  
    
        /** 
         * 把指定文件或目录转换成指定的编码 
         *  
         * @param file 
         *            要转换的文件或目录 
         * @param fromCharsetName 
         *            源文件的编码 
         * @param toCharsetName 
         *            要转换的编码 
         * @param filter 
         *            文件名过滤器 
         * @throws Exception 
         */  
        public static void convert(String fileName, String fromCharsetName,  
                String toCharsetName, FilenameFilter filter) throws Exception {  
            convert(new File(fileName), fromCharsetName, toCharsetName, filter);  
        }  
    
        /** 
         * 把指定文件或目录转换成指定的编码 
         *  
         * @param file 
         *            要转换的文件或目录 
         * @param fromCharsetName 
         *            源文件的编码 
         * @param toCharsetName 
         *            要转换的编码 
         * @param filter 
         *            文件名过滤器 
         * @throws Exception 
         */  
        public static void convert(File file, String fromCharsetName,  
                String toCharsetName, FilenameFilter filter) throws Exception {  
            if (file.isDirectory()) {  
                File[] fileList = null;  
                if (filter == null) {  
                    fileList = file.listFiles();  
                } else {  
                    fileList = file.listFiles(filter);  
                }  
                for (File f : fileList) {  
                    convert(f, fromCharsetName, toCharsetName, filter);  
                }  
            } else {  
                if (filter == null  
                        || filter.accept(file.getParentFile(), file.getName())) {  
                    String fileContent = getFileContentFromCharset(file,  
                            fromCharsetName);  
                    saveFile2Charset(file, toCharsetName, fileContent);  
                }  
            }  
        }  
    
        /** 
         * 以指定编码方式读取文件,返回文件内容 
         * 
         * @param file 
         *            要转换的文件 
         * @param fromCharsetName 
         *            源文件的编码 
         * @return 
         * @throws Exception 
         */  
        public static String getFileContentFromCharset(File file,  
                String fromCharsetName) throws Exception {  
            if (!Charset.isSupported(fromCharsetName)) {  
                throw new UnsupportedCharsetException(fromCharsetName);  
            }  
            InputStream inputStream = new FileInputStream(file);  
            InputStreamReader reader = new InputStreamReader(inputStream,  
                    fromCharsetName);  
            char[] chs = new char[(int) file.length()];  
            reader.read(chs);  
            String str = new String(chs).trim();  
            reader.close();  
            return str;  
        }  
    
        /** 
         * 以指定编码方式写文本文件,存在会覆盖 
         *  
         * @param file 
         *            要写入的文件 
         * @param toCharsetName 
         *            要转换的编码 
         * @param content 
         *            文件内容 
         * @throws Exception 
         */  
        public static void saveFile2Charset(File file, String toCharsetName,  
                String content) throws Exception {  
            if (!Charset.isSupported(toCharsetName)) {  
                throw new UnsupportedCharsetException(toCharsetName);  
            }  
            OutputStream outputStream = new FileOutputStream(file);  
            OutputStreamWriter outWrite = new OutputStreamWriter(outputStream,  
                    toCharsetName);  
            outWrite.write(content);  
            outWrite.close();  
        }  
    
    }
    展开全文
  • Python txt文件编码格式转换

    千次阅读 2019-01-26 14:56:42
    import os import sys import codecs import chardet # from subFunc_tools import * def list_folders_...文件" 名字 :param path: "文件夹"和"文件"所在的路径 :return: (list_fol.
    import os
    import sys
    import codecs
    import chardet
    # from subFunc_tools import *
    
    def list_folders_files(path):
        """
        返回 "文件夹" 和 "文件" 名字
    
        :param path: "文件夹"和"文件"所在的路径
        :return:  (list_folders, list_files)
                :list_folders: 文件夹
                :list_files: 文件
        """
        list_folders = []
        list_files = []
        for file in os.listdir(path):
            file_path = os.path.join(path, file)
            if os.path.isdir(file_path):
                list_folders.append(file)
            else:
                list_files.append(file)
        return (list_folders, list_files)
    
    def convert(file, in_enc="GBK", out_enc="UTF-8"):
        """
        该程序用于将目录下的文件从指定格式转换到指定格式,默认的是GBK转到utf-8
        :param file:    文件路径
        :param in_enc:  输入文件格式
        :param out_enc: 输出文件格式
        :return:
        """
        in_enc = in_enc.upper()
        out_enc = out_enc.upper()
        try:
            print("convert [ " + file.split('\\')[-1] + " ].....From " + in_enc + " --> " + out_enc )
            f = codecs.open(file, 'r', in_enc)
            new_content = f.read()
            codecs.open(file, 'w', out_enc).write(new_content)
        # print (f.read())
        except IOError as err:
            print("I/O error: {0}".format(err))
    
    
    #将路径下面的所有文件,从原来的格式变为UTF-8的格式
    
    if __name__ == "__main__":
        path = r'G:\Temp'
        (list_folders, list_files) = list_folders_files(path)
    
        print("Path: " + path)
        for fileName in list_files:
            filePath = path + '\\' + fileName
            with open(filePath, "rb") as f:
                data = f.read()
                codeType = chardet.detect(data)['encoding']
                convert(filePath, codeType, 'UTF-8')
    

     

    展开全文
  • 修改 .txt 文件默认编码格式

    千次阅读 2019-06-11 00:41:00
    新建一个txt文件另存为编码为utf-8格式的空文件将文件命名为utf-8.txt(任意名字即可)将文件放置C:\Windows\System32\utf-8.txt(放置某个目录下)进入注册表 Win+R -> regedit打开\HKEY_CLASSES_ROOT\.txt\ShellNew...


    新建一个txt文件
    另存为编码为utf-8格式的空文件
    将文件命名为utf-8.txt(任意名字即可)
    将文件放置C:\Windows\System32\utf-8.txt(放置某个目录下)
    进入注册表 Win+R -> regedit
    打开\HKEY_CLASSES_ROOT\.txt\ShellNew
    新建一个名为 FileName 的字符串值 设置值为 C:\Windows\System32\utf-8.txt 即可

    转载于:https://www.cnblogs.com/W-it-H-ou-T/p/11001335.html

    展开全文
  • 将占用空间比较小的txt文件的GBK编码修改为UTF8的 一、 1.右键使用记事本打开某txt文件 2.点击文件(F) 按钮,选择 另存为(A)… 3.选择保存方式为 UTF-8,点击 保存 over!!!!
  • Linux修改文件编码格式 使用vi或者vim进入到文件内 查看当前文件的编码格式,这里格式为latin1 输入:,然后输入set fileencoding命令,回车 修改格式为utf-8 输入命令(:set fileencoding = utf-8) = utf-8)...
  • ubuntu 修改txt文件编码方式(iconv)

    千次阅读 2017-04-05 21:07:41
    file **.txt 修改文件编码方式 2.1编码的问题 GB2312是国家制定的汉字编码标准,使用双子节进行编码,共收入6763个汉字和682个非汉字图形字符。GBK即对国标编码的扩展,在GB2312的基础上进行扩展形成的,使用双子...
  • /*功能:实现文件编码格式的判断通过一个文件的最前面三个字节,可以判断出该的编码类型:ANSI: 无格式定义;(第一个字节开始就是文件内容)Unicode: 前两个字节为FFFE;Unicode big endian: 前两字节为FEFF;...
  • Mac 查看/修改文件编码格式

    千次阅读 2019-10-22 22:20:49
    Mac 查看/修改文件编码格式1. 安装 enca 命令行工具2. 查看文件编码格式3. 编码转换 1. 安装 enca 命令行工具 $ brew install enca 注意:没有 brew 请先安装 HomeBrew homebrew 安装地址:https://brew.sh 2. ...
  • 修改txt默认编码格式为UTF-8

    千次阅读 2019-03-14 11:03:01
    1. 打开目录(没有则自己新建) 引用 C:\WINDOWS\SHELLNEW 2. 在该目录下创建一个文本文档(txt): 引用 右键 -> 新建 ->...5. 选择编码格式为: 引用 UTF-8 保存并关闭文件。 6.点击开始菜单: ...
  • 批量修改文件的编码格式.doc ...其实这样大多是由于文件编码格式不对造成的! 今天从公司拷回来的系统,运行老报JS错,开始发现一个修改一个,但后来工作量太大,又懒得写一个程序,想在网上找找有没有现成的软件。
  • 所以自己就写了个程序,批量修改文件编码格式。 代码: /** * 修改文件编码格式,例如:GBK转UTF8 * 支持多级目录 * @param {String} [root_path] [需要进行转码的文件路径] * @pa...
  • window新建的txt、wps默认是ANSI编码格式 比如csv文件修改编码格式为UTF-8: 第一步:选中已经转换好的csv文件,并右击鼠标,选择【打开方式】-【记事本】 第二步:点击【文件】-【另存为】 第三步:编码...
  • python 3批量修改文件编码格式

    千次阅读 2018-09-27 21:36:17
    python 3批量修改文件编码格式 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。 新的改变 我们对...
  • Mac 中批量修改文件编码格式

    千次阅读 2019-02-22 15:35:04
    //方法一:修改目下所有文件编码格式 find * -exec sh -c "enconv -L zh_CN -x UTF-8 {}" \; //注意后面的结束标示 " \;" //方法二 mkdir output find *.txt -exec sh -c ...
  • 项目工程文件编码格式有utf-8,也有gb2312,在通过Source Insight 4.0打开文件只能设置一种默认编码格式UTF-8/Windows ANSI/GB2312,不能自动识别文件本身的编码格式,这就导致总有一部分文件打开后,注释是乱码,...
  • 文件编码格式修改为UTF-8: (1)查看编码格式:file 文件路径;出现Non-ISO extended-ASCII text(未知编码格式); (2)解决方案:不用管文件原来是什么格式,直接将文件另存为,编码格式改为UTF-8即可。 ...
  • 所以,用C#编写了这个txt文件编码批量转换器 ,方便大家对大量文件进行转换编码。 使用方法很简单,只需把你要转换的txt文件放到任意一个文件夹里面,然后运 行txt文件编码批量转换器,选择你要转换的编码,然后...
  • 如何修改文件编码格式

    千次阅读 2018-03-01 15:10:00
    本章节介绍一下如何修改文件编码格式,比如css文件、js文件或者txt文本文件。 下面分布做一下介绍,就以css文件为例子: 一.以txt文本打开css文件: 右键css文件,然后选择“打开方式”菜单,选择使用记事本打开。 ...
  • MyEclipse修改文件编码格式

    千次阅读 2013-06-22 21:19:40
    一、设置新建常见文件的默认编码格式,也就是文件保存的格式。 在不对MyEclipse进行设置的时候,默认保存文件的编码,一般跟简体中文操作系统(如windows2000,windowsXP)的编码一致,即GBK。 在简体中文系统下...
  • 自动识别 文本编码格式 """ import chardet def detectCode(path): with open(path, 'rb') as file: data = file.read(20000) dicts = chardet.detect(data) return dicts["encoding"] def p...
  • TXT文档如何更改默认编码格式

    千次阅读 2019-04-21 20:20:18
    更改默认的txt文档编码格式为什么要更改呢?第一步:创一个模板文本。第二步:修改模板文本的路径,指向第一步的模板文本 为什么要更改呢? 因为很多网上的txt文档,用记事本打开后,没有换行,但是作者肯定是工整的...
  • 从网上下载的源码经常会出现源码文件编码格式和IDE默认的格式不匹配的情况,特别是源码文件中有中文汉字(包括注释)的情况下,特特别是不同IDE、不同系统下编辑的源码。虽然IDE自带可以修改文件的编码格式,但是...
  • 通过txt文件编码批量转换器,你可以快速的完成多个txt文件编码的转换,而且该转换器可以转换的编码不只是unicode,还有utf-8等常用编码格式。该转换器采用文件流读取写入方式,尽量保持了文件的正确无误;并采用了多...
  • 更好的傻瓜型命令行工具enca ...检查文件编码 enca -L zh_CN ip.txt Simplified Chinese National Standard; GB2312 1 2 转换文件编码 $enca -L 当前语言 -x 目标编码 文件名 1 -L zh_CN 一...
  • linux查看文件编码格式

    万次阅读 2019-04-19 17:13:32
    1.查看文件编码 1.vim 查看 ...上面方式得出来的文件编码格式有时候总是不一致,不清楚为啥。。 2.文件编码格式转换 1.vim 转换 在Vim中直接进行转换文件编码,比如将一个文件转换成utf-8格式 :set fileenc...
  • Python3.6 批量修改文件编码格式

    千次阅读 2019-01-23 11:58:34
    遍历指定目录下的所有文件,读取.cpp文件和.h文件,将非utf-8编码文件改为utf-8格式
  • 批量修改文本文件编码格式

    万次阅读 2018-04-20 15:49:52
    1.使用EditPlus打开要修改编码格式文件所属目录 2.按shift,选中左下角列表中需要转换编码格式的文本,右击选择“打开”,打开的效果如下: 3.依次选择菜单栏中的“文档”-&gt;“文本编码”-&gt;...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 117,161
精华内容 46,864
关键字:

修改txt文件编码格式