gb2312

再议字符编码

对着背影说爱祢 提交于 2020-02-12 04:38:13
1. ASCII 我们需要了解的最早编码是ASCII码。它用7个二进制位来表示,由于那个时期生产的大多数计算机使用8位大小的字节,因此用户不仅可以存放所有可能的ASCII字符,而且有整整一位空余下来。如果你技艺高超,可以将该位用做自己离奇的目的:WordStar中那个发暗的灯泡实际上设置这个高位,以指示一个单词中的最后一个字母,同时这也宣示了WordStar只能用于英语文本。   由于字节有多达8位的空间,因此许多人在想:“呀!我们可以把128~255之间的编码用做个人的应用目的。”问题在于,同时产生这种想法的人相当多,而且在128~255之间的各个位置上应该存放什么这一问题上,真是仁者见仁智者见智。事实上,只要人们开始在美国以外的地方购买计算机,那么各种各样的不同OEM字符集都会进入规划设计行列,并且各人都会根据自己的需要使用高位的128个字符。如此一来,甚至在同语种的文档之间就不容易实现互换。 ASCII可被扩展,最优秀的扩展方案是ISO 8859-1,通常称之为Latin-1。Latin-1包括了足够的附加字符集来写基本的西欧语言。 最后,这个人人参与的OEM终于以ANSI标准的形式形成文件。在ANSI标准中,每个人都认同如何使用低端的128个编码,这与ASCII相当一致。不过,根据所在国籍的不同,处理编码128以上的字符有许多不同的方式。这些不同的系统称为代码页。   同时

字符集和字符编码的区别

喜你入骨 提交于 2020-02-12 04:37:29
1、字符,字符集,字符编码概念 字符: 在计算机和电信技术中,一个字符是一个单位的字形、类字形单位或符号的基本信息。即一个字符可以是一个中文汉字、一个英文字母、一个阿拉伯数字、一个标点符号等。 字符集: 多个 字符 的集合。例如GB2312是中国国家标准的简体中文字符集,GB2312收录简化汉字(6763个)及一般符号、序号、数字、拉丁字母、日文假名、希腊字母、俄文字母、汉语拼音符号、汉语注音字母,共 7445 个图形字符。 字符编码: 把 字符集 中的 字符 编码为( 映射 )指定集合中的某一对象(例如:比特模式、自然数序列、电脉冲),以便文本在计算机中存储和通过通信网络的传递。 字符集和字符编码的关系 : 字符集是书写系统字母与符号的集合,而字符编码则是 将字符映射为一特定的字节或字节序列 ,是一种规则。通常特定的字符集采用特定的编码方式(即一种字符集对应一种字符编码(例如:ASCII、IOS-8859-1、GB2312、GBK,都是即表示了字符集又表示了对应的字符编码,但Unicode不是,它采用现代的模型)),因此基本上可以将两者视为同义词。 2、发展过程 (1)单字节 ASCII (American Standard Code for Information Interchange),128个字符,用7位二进制表示(00000000-01111111即0x00-0x7F)

python文件操作与字符编码

最后都变了- 提交于 2020-02-12 04:31:38
知识内容: 1.文件对象与文件处理流程 2.基本操作 3.上下文管理 4.文件的修改与文件内光标的移动 5.字符编码 一、文件对象与文件处理流程 1.文件对象 (1)文件分类 按文件中数据的组织形式可以把文件分为 文本文件 和 二进制文件 文本文件中存储的是常规字符串,由若干文本行组成,通常每行以换行符('\n')结尾 二进制文件把对象内容以字节串(bytes)进行存储,无法用记事本及其他普通文本处理软件打开,也无法直接被人阅读理解,需要使用专门的软件进行解码才能读取其中的内容 (2)文件对象: python中内置了文件对象,通过open函数可以打开一个文件并创建一个文件对象,通过对这个文件对象的一系列操作来修改、读、写文件 eg: 文件对象名 = open(文件名[, 打开方式[,缓冲区]])    f1 = open('file.txt', 'r') (3)文件打开方式(文件打开模式): r ,只读模式【默认模式,文件必须存在,不存在则抛出异常】 w,只写模式【不可读;不存在则创建;存在则清空内容】 x, 只写模式【不可读;不存在则创建,存在则报错】 a, 追加模式【不存在则创建;存在则只追加内容】 "+" 表示可以同时读写某个文件 r+, 读写【可读,可写】 w+,写读【可读,可写】 x+ ,写读【可读,可写】 a+, 写读【可读,可写】 "b"表示以字节的方式操作 rb 或

python学习之路4

这一生的挚爱 提交于 2020-02-08 22:51:08
一、字符编码与转码 1.在python2默认编码是ASCII, python3里默认是utf-8 2.unicode 分为 utf-32(占4个字节),utf-16(占两个字节),utf-8(占1-4个字节), so utf-16就是现在最常用的unicode版本, 不过在文件里存的还是utf-8,因为utf8省空间 3.在py3中encode,在转码的同时还会把string 变成bytes类型,decode在解码的同时还会把bytes变回string in python3 #-*-coding:gb2312 -*- #这个也可以去掉 __author__ = 'xxx' import sys print(sys.getdefaultencoding()) msg = "姆巴佩" #msg_gb2312 = msg.decode("utf-8").encode("gb2312") msg_gb2312 = msg.encode("gb2312") #默认就是unicode,不用再decode,喜大普奔,如果是py2需先解码成unicode再编码成gb2312 gb2312_to_unicode = msg_gb2312.decode("gb2312") gb2312_to_utf8 = msg_gb2312.decode("gb2312").encode("utf-8")

Python2 和 Python3 编码问题

大兔子大兔子 提交于 2020-02-07 01:47:03
基本存储单元 位(bit, b):二进制数中的一个数位,可以是0或者1,是计算机中数据的最小单位。 字节(Byte,B):计算机中数据的基本单位,每8位组成一个字节。 1B = 8b 各种信息在计算机中存储、处理,至少需要一个字节的空间。 字节与字符 计算机存储的一切数据都是由一串 0 和 1 组成的字节序列构成。 字符就是一个符号,比如一个汉字、一个英文字母、一个标点都可以称为一个字符。 编码与解码 我们用编辑器打开的文本,看到的一个个字符,最终保存在磁盘上的时候都是以二进制字节序列形式存起来的。那么从字符到字节的转换过程就叫做编码(encode),反过来叫做解码(decode),两者是一个可逆的过程。编码是为了存储传输,解码是为了方便显示阅读。 编码规则 编码是人们定义的一种规则,使字符可以根据该规则,转换为对应的字节,方便存储和传输,也可以使字节转化成对应的字符用于显示、阅读。 例如,按照 ASCII 编码进行转换,字符 A 对应的字节为 0100 0001,占用 1 个字节的大小,一个字节也就是8位,可以表示 0 - 255,对于英文来讲 255 个字符已经足够显示所有的英文字符了,所以 ASCII(每个 字符占用一个字节) 编码是美国的标准编码 但是 ASCII 处理中文明显是不够的,中文不止 255 个汉字,所以中国制定了 GB2312 编码,用两个字节表示一个汉字

MySQL 语句正确,运行出错

半城伤御伤魂 提交于 2020-02-04 03:17:32
查看mysql数据编码 登录 MySQL 服务,查看mysql数据库默认的编码 mysql> show variables like 'character%'; +--------------------------+-------------------------------------------------+ | Variable_name | Value | +--------------------------+-------------------------------------------------+ | character_set_client | gbk | | character_set_connection | gbk | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | gbk | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | E:\0Develop\mysql-5.7.15-winx64\share\charsets\ | +-----------------------

字符编码与转码

风流意气都作罢 提交于 2020-02-01 02:25:13
需知 在python2默认编码是ASCII, python3里默认是unicode 在py3中encode,在转码的同时还会把string 变成bytes类型,decode在解码的同时还会把bytes变回string 转换原则 所有的编码都需要unicode作为中介来转换 utf-8转换程gb2312 首先通过解码【decode】转换成unicode编码 其次通过编码【encode】转换成gb2312编码 gb2312转换程utf-8 首先通过解码【decode】转换成unicode编码 其次通过编码【encode】转换成utf-8编码 实战(python3) import sys , time print ( '系统默认\t' , sys . getdefaultencoding ( ) ) #系统默认编码 str = '庆余年很好看哈' #字符串的编码是unicode str_utf8 = str . encode ( 'utf-8' ) str_gb2312 = str_utf8 . decode ( 'utf-8' ) . encode ( 'gb2312' ) #通过unicode转换 str_gbk = str . encode ( 'gbk' ) print ( 'unicode\t' , str ) print ( 'utf-8\t' , str_utf8 )

C#生成word文件

时光总嘲笑我的痴心妄想 提交于 2020-01-31 08:29:10
    Response.Clear(); //清空无关信息 Response.Buffer = true; //完成整个响应后再发送 Response.Charset = "GB2312";//设置输出流的字符集-中文 Response.AppendHeader("Content-Disposition", "attachment;filename=Report.doc");//追加头信息 Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");//设置输出流的字符集 Response.ContentType = "application/ms-word ";//输出流的MIME类型 Response.Write(sbMenu.ToString()); //Word文档内容 Response.End();//停止输出 来源: https://www.cnblogs.com/canwyq/archive/2012/06/12/2546657.html

HTML | 第一期 / 小白入门

依然范特西╮ 提交于 2020-01-28 05:09:02
本文主要内容 头标签 排版标签: <p> <div> <span> <br> <hr> <center> <pre> 字体标记: <h1> <font> <b> <u> <sup> <sub> 超链接 图片标签 前言 web标准 web标准介绍: w3c:万维网联盟组织,用来制定web标准的机构(组织) web标准:制作网页要遵循的规范。 web标准规范的分类:结构标准、表现标准、行为标准。 结构:html。表现:css。行为:JavaScript。 web标准总结: 结构标准:相当于人的身体。html就是用来制作网页的。 表现标准: 相当于人的衣服。css就是对网页进行美化的。 行为标准: 相当于人的动作。JS就是让网页动起来,具有生命力的。 浏览器介绍 浏览器是网页运行的平台,常用的浏览器有IE、火狐(Firefox)、谷歌(Chrome)、猎豹浏览器、Safari和Opera等。如下图所示: 浏览器内核: 浏览器 内核 IE trident chrome / 欧鹏 blink 火狐 gecko Safari webkit PS:「浏览器内核」也就是浏览器所采用的「渲染引擎」,渲染引擎决定了浏览器如何显示网页的内容以及页面的格式信息。 渲染引擎是兼容性问题出现的根本原因。 Sublime Text 的使用 详情请移步至: Sublime Text使用技巧 一、HTML的介绍 1

将汉字转为拼音

蓝咒 提交于 2020-01-24 08:45:35
------------------------------------------------------------------------------ 第一种方法: 下面是封装的一个方法。将汉字转为拼音的方法,但是有些字转不了     /// <summary> /// 中文转拼音 /// </summary> /// <param name="str"></param> /// <returns></returns> public String ConvertToPinYin(string str) { string strPinYin = ""; int i = 0; Hashtable htData = Paramer.Json2Hashtable(DataProcessing.strPinYinDict); foreach (char item in str.ToCharArray()) { if (i == 0 && htData.ContainsKey(item.ToString())) { strPinYin += htData[item.ToString()].ToString().ToUpper(); i++; } else { if (Microsoft.International.Converters.PinYinConverter