txt文本转编码格式(支持utf-8、GBK、GB2312、GB18030、BIG5等所有编码格式)

2024-05-11 15:20

本文主要是介绍txt文本转编码格式(支持utf-8、GBK、GB2312、GB18030、BIG5等所有编码格式),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

txt文本转编码格式(支持utf-8、GBK、GB2312、GB18030、BIG5等所有编码格式)

脚本的使用方法

创建一个convert_to_utf8的python文件,将代码复制保存。
在终端输入以下命令,即可实现自动检测原文件的编码格式,并生成对应的新文件:

python convert_to_utf8.py 原文件.txt 新文件.txt

当然,也可以指定原文件的编码格式:

python convert_to_utf8.py 原文件.txt 新文件.txt --encoding Big5 
import argparse
import chardetdef detect_encoding(file_path):"""Detect the encoding of a file."""with open(file_path, 'rb') as file:raw_data = file.read(10000)  # Read enough of the file to detect encodingresult = chardet.detect(raw_data)print(f"Detected encoding: {result['encoding']} with confidence {result['confidence']}")return result['encoding']def convert_to_utf8(input_file, output_file, encoding=None):"""Convert a file to UTF-8 encoding using a specified or detected encoding."""if not encoding:encoding = detect_encoding(input_file)try:with open(input_file, 'r', encoding=encoding, errors='ignore') as file:content = file.read()with open(output_file, 'w', encoding='utf-8') as file:file.write(content)print(f"文件已成功转换并保存为:{output_file},使用的编码:{encoding}")except Exception as e:print(f"转换过程中发生错误:{e}")if __name__ == "__main__":parser = argparse.ArgumentParser(description="Convert text file encoding to UTF-8 using a specified or detected encoding.")parser.add_argument("input_file", help="The path to the input file.")parser.add_argument("output_file", help="The path to the output file where the UTF-8 encoded file will be saved.")parser.add_argument("--encoding", help="Optionally specify the encoding to override automatic detection.", default=None)args = parser.parse_args()convert_to_utf8(args.input_file, args.output_file, args.encoding)

这篇关于txt文本转编码格式(支持utf-8、GBK、GB2312、GB18030、BIG5等所有编码格式)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/979913

相关文章

C++中处理文本数据char与string的终极对比指南

《C++中处理文本数据char与string的终极对比指南》在C++编程中char和string是两种用于处理字符数据的类型,但它们在使用方式和功能上有显著的不同,:本文主要介绍C++中处理文本数... 目录1. 基本定义与本质2. 内存管理3. 操作与功能4. 性能特点5. 使用场景6. 相互转换核心区别

Python动态处理文件编码的完整指南

《Python动态处理文件编码的完整指南》在Python文件处理的高级应用中,我们经常会遇到需要动态处理文件编码的场景,本文将深入探讨Python中动态处理文件编码的技术,有需要的小伙伴可以了解下... 目录引言一、理解python的文件编码体系1.1 Python的IO层次结构1.2 编码问题的常见场景二

Java中字符编码问题的解决方法详解

《Java中字符编码问题的解决方法详解》在日常Java开发中,字符编码问题是一个非常常见却又特别容易踩坑的地方,这篇文章就带你一步一步看清楚字符编码的来龙去脉,并结合可运行的代码,看看如何在Java项... 目录前言背景:为什么会出现编码问题常见场景分析控制台输出乱码文件读写乱码数据库存取乱码解决方案统一使

Python一次性将指定版本所有包上传PyPI镜像解决方案

《Python一次性将指定版本所有包上传PyPI镜像解决方案》本文主要介绍了一个安全、完整、可离线部署的解决方案,用于一次性准备指定Python版本的所有包,然后导出到内网环境,感兴趣的小伙伴可以跟随... 目录为什么需要这个方案完整解决方案1. 项目目录结构2. 创建智能下载脚本3. 创建包清单生成脚本4

Java实现字节字符转bcd编码

《Java实现字节字符转bcd编码》BCD是一种将十进制数字编码为二进制的表示方式,常用于数字显示和存储,本文将介绍如何在Java中实现字节字符转BCD码的过程,需要的小伙伴可以了解下... 目录前言BCD码是什么Java实现字节转bcd编码方法补充总结前言BCD码(Binary-Coded Decima

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Java实现在Word文档中添加文本水印和图片水印的操作指南

《Java实现在Word文档中添加文本水印和图片水印的操作指南》在当今数字时代,文档的自动化处理与安全防护变得尤为重要,无论是为了保护版权、推广品牌,还是为了在文档中加入特定的标识,为Word文档添加... 目录引言Spire.Doc for Java:高效Word文档处理的利器代码实战:使用Java为Wo

Python文本相似度计算的方法大全

《Python文本相似度计算的方法大全》文本相似度是指两个文本在内容、结构或语义上的相近程度,通常用0到1之间的数值表示,0表示完全不同,1表示完全相同,本文将深入解析多种文本相似度计算方法,帮助您选... 目录前言什么是文本相似度?1. Levenshtein 距离(编辑距离)核心公式实现示例2. Jac

Java 中编码与解码的具体实现方法

《Java中编码与解码的具体实现方法》在Java中,字符编码与解码是处理数据的重要组成部分,正确的编码和解码可以确保字符数据在存储、传输、读取时不会出现乱码,本文将详细介绍Java中字符编码与解码的... 目录Java 中编码与解码的实现详解1. 什么是字符编码与解码?1.1 字符编码(Encoding)1

Python中高级文本模式匹配与查找技术指南

《Python中高级文本模式匹配与查找技术指南》文本处理是编程世界的永恒主题,而模式匹配则是文本处理的基石,本文将深度剖析PythonCookbook中的核心匹配技术,并结合实际工程案例展示其应用,希... 目录引言一、基础工具:字符串方法与序列匹配二、正则表达式:模式匹配的瑞士军刀2.1 re模块核心AP