来源:
问友源码 -> 网站开发相关 -> Python
地址:http://www.winu.cn/dispdocnew.php?tid=108863
是否全文转载:是
由于网站要支持国际化, 以前用 GB2312 的脚本都要转化成 utf-8 格式. 一共有 1000 多个页面,
虽然一些文本编辑器支持转化格式, 比如 EditPlus, UE等, 但这么多的文件一个个转化也够受的. 所以准备用 Python
写了一个脚本, 负责转化目录下的所有文件成 urf-8 格式.
Python 中的 codecs 模块可以完成这个任务, 该模块可以转化很多编码, 但对我来说 utf-8 就足够, 一般支持多语言的网站都是 utf-8 的编码模式.
实现关键点:
1. 用 codecs 的 open 方式打开文件, 打开模式是只读和二进制, 即'rb'.
2. 读出文件内容, 用 encode 编码成 utf-8.
3. 用 'wb' 模式新建文件, 保存即可.
4. 另外 print 不能打印 utf-8 格式的内容, 必须先解码后再编码成 GB2312.
代码片断:
# -*- coding: mbcs -*-
import codecs
f = codecs.open('D:\\normal.txt', 'rb', 'mbcs')
text = f.read().encode('utf-8')
f.close
f = open('d:\\utf8.txt', 'wb')
f.write(text)
f.close()
print text.decode('utf-8').encode('gb2312')
==================以下为google知================
MBCS(Multi-Byte Chactacter System,即多字节字符系统)
它是编码的一种类型,而不是某个特定编码的名称。
UNICODE则是一个编码的名称。即是一种编码方案。
http://baike.baidu.com/view/40801.html?wtp=tt
MBCS
全称
:
|
Multiple Byte Character Set
|
1个文字由多个字节
表现的文字的集合。同时,指在其文字中分配的字符编码
的体系。像日语和中文等文字组/编码
一样地,把以2个字节
表现1个字的文字组和编码
体系特别地称为DBCS(Double Byte Character Set)。把拉丁字母和数字·记号的ASCII等,以一个字节
表现1个字的文字组和编码
体系的叫做SBCS(Single Byte Character Set)。
参见 http://e-words.cn/w/MBCS.html
分享到:
相关推荐
utf-8转换工具是非常好用的一款工具,用于将中文转换成utf-8格式的字符
Java工程编码格式由GBK转化成utf-8(编码格式互转) https://ymjin.blog.csdn.net/article/details/118769530
GBK、UTF-8批量文件3秒快速转码工具(支持GBK,UTF-8免费转换),UTF-8/GBK编码在线转换工具,压缩包可以有多目录与文件,如目录中有图片不会转码,但是会随转码好的文件一起打包下载。 使用帮助 . 上传压缩包(仅支持zip...
修改xml文件的编码格式:GB2312格式修改为UTF-8
文件的编码格式需要转换,gb2312,utf,utf-8等编码格式的相互转换等
字符串转化成UTF-8格式,亲测可用 std::string CBaseNode::string_To_UTF8(const std::string & str)
linux C/c++ 源代码,将中文字串与UTF-8格式字串相互转化,我在项目中使用的代码,完全可用
可批量将UTF-8的文本文件转为ANSI文本文件,代码略加修改,即可在换任意两种编码的文本文件内互相转化。
1.首先介绍一下本人应用场景,qt...3.此小工具主要针对utf-8编码文件,能够批量添加删除BOM,无识别转化ASIIC功能,添加BOM时,如果文件是utf-8(BOM),则跳过,删除亦然 4.当不选中添加删除时可用于文件数量统计。
不需要关心接受的字符串编码是UTF_8还是GBK,还是ios-8859-1,自动转换为utf-8编码格式,无需判断字符串原有编码,用法://处理编码String newStr = GetEncode.transcode(oldStr);
TXT文本文件ANSI格式批量转UTF8格式
C#写的 GBK GB2312 UTF-8转换 功能简单,仅供学习
身份证读卡器生成的基本信息TEXT文件,由于是采用 GB 13000 的 UCS-2 编码格式,java读取出来是乱码,这个段代码就是解决转码问题的,亲测可用
可以将TXT其他格式转为UTF-8格式,实现快捷的读取 ,可以实现批量转换,直接将文件选中添加进入,点击转换的格式即可。
utf-8 互转 gb2312 转码 支持中文汉字 可以直接输入 转码
本工具可以根据需要批量将一个目录及其子目录下的所有文件转换为GB2312或Utf-8编码文件,绿色软件,无需安装。 需要.NET Framework v2.0 运行库支持。
ASCII 及UTF-8 与字符互相转换
在开发的时候经常碰到这样的情况,需要将原本编码格式为GBK的工程改成UTF-8来编码,设置之后,注释全都乱码了,一个一个改太麻烦,有了这个工具只用运行一下main方法,一键搞定 ps:如果是UTF-8转GBK,或是其他编码...
java工具 把GBK文件夹批量转化UTF-8编码的, 支持文件名
Utf-8转化为GB2312 或BIG5编码的工具,带部分源码