`

ASCII与Unicode 学习

阅读更多
    建立了一个文本文件内容为空,分别另存为ANSI 编码,Unicode编码, UTF-8 编码, 结果它们的大小和占用空间分别为:(2个字节,4kb),(0个字节,0kb),(3个字节,4kb)好玩,看看到底咋整的吧!于是把word文件也狂转换开始,玩玩

问题: word文件保存为 xml格式 怎么打开?双击跳出保存对话框,保存后,再双击,再跳出保存对话框,我非打开不可,于是研究下如下格式:

rtf格式:RTF格式是由Microsoft创建的,同时它也是微软公司的WordPad采
用的标准格式.RTF是Rich Text Format的缩写,中文译名有丰富文本格式或富文本格式等 沟通WPS与Word的一种文件格式──RTF格式:写字板




现在大部分机器上装的字处理软件不是微软的word就是金山的wps,这两个软件默认的文件格式不一样,一个是.doc格式,一个是.wps格式,彼此之间不能实现很好的互访。现在很多人采用的方法就是把文件存为纯文本.txt格式,但是会因此丢失文件原有的编排格式,很可惜!


这里我们介绍另一种文件格式──.RTF格式,RTF是一种非常流行的文件结构,很多文字编辑器都支持它。一般的格式设置,比如字体和段落设置,页面设置等等信息都可以存在RTF格式中,它能在一定程度上实现word与wps文件之间的互访。下面以word为例,说明具体的操作方法如下:


1.单击“文件”菜单中的“另存为”选项,弹出的“另存为”对话框。


2.在“保存位置”输入框中选择文件保存的位置,在“文件名”输入框中输入文件名。


3.单击保存类型输入框中的下拉按钮,在弹出的列表中选择“RTF类型”。


4.单击“确定”按钮即可。


这样,当你用wps打开这个文件时,就会发现,基本的编排格式都还在,比如页眉、页脚、标题等,也许字体型号、表格等会有所变化,但稍稍加工就可以了。你不妨试一试!




       另外,我发现写字板也可以打开doc文件和RTF文件,当然记事本不能。

xml格式:

xml到xsl转换:

mht格式:

html格式:



相对于ASCII,Unicode为双字节长的字符集,到目前已定义了世界上绝大多数文字的常用字,ASCII字符集是它的子集,即Unicode字符集兼容ASCII字符集。使用Unicode最大的好处是可以使应用程序方便地实现多语言支持,不再基于CODEPAGE。微软的IE    5.0、WINDOWS    2000,OFFICE    97以上版都是基于UICODE的。  
             关于使用UNICODE的问题:因WINDOWS    95、98    不支持UNICODE,WINDOWS    NT、2000,完全支持,若要使基于UNICODE的应用程序在上述OS上运行,那是个较麻烦的问题,请参考微软经典书籍:<<DEVELOPING    INTERNATIONAL    SOFTWARE    FOR    WINDOWS    95    AND    WINDOWS    NT>>    ---    NADINE    KANO  

UNICODE每个字符占两个字节。  
   ASCII占一个。  
   从Win2K开始,操作系统所有的内部函数都是用UNICODE实现的。

Unicode简介    
   
   ----    由于在计算机应用领域中存在着几十种互不相同的字符集,当在使用不同字符集的计算机系统之间进行信息交换时,人们可能会得到一些莫名其妙的东西(那些经常上网,经常不得不在各种字符编码之间来回切换的人对此可能深有感触)。紊乱的字符编码给信息交换以及软件开发商等带来了极大的不便。人们急需一种得到大家认可的并且涵盖了全世界各种文字的字符集。显然,建立这样的一种字符集是十分困难的。不过,这方面的努力一直在进行,Unicode就是这种努力的结果之一。    
   
   ----    为了将成千上万的文字统一到同一个编码机制之下,在兼顾经济的原则下,不管是东方文字还是西方文字,在Unicode中一律用两个字节来表示。也就是说,Unicode是一种双字节编码机制的字符集,使用0-65535之间的双字节无符号整数对每个字符进行编码。这样,在Unicode字符集中,至少可以定义65536个不同的字符,足以应付目前绝大多数场合的需要。    
   
   ----    目前,常用的Unicode编码方式有两种:UTF-8以及UTF-16。    
   
   ----    UTF-8    是一种不等幅的编码方式,UTF-8编码的字节长度取决于所要编码的字符在ISO    10646中的编码值。在UTF-8中,不同的字符,可能需要1-6个字节来进行编码。对于单字节的UTF-8编码,该字节的最高位为0,其余7位用来对字符进行编码(等同于ASCII码)。对于多字节的UTF-8编码,如果编码包含n个字节,那么第一个字节的前n位为1,第一个字节的第n+1位为0,该字节的剩余各位用来对字符进行编码。在第一个字节之后的所有的字节,都是最高两位为"10",其余6位用来对字符进行编码。    
   
   ----    UTF-16也是Unicode的变形表示方式的一种。它的目的是维持双八位的编码方式,同时也用一些特殊的双八位来表示ISO    10646中非基本多文种平面(BMP)中的一些字符。这种用来表示非BMP字符的方法在Unicode中称作代理对机制。    
   
   ----    代理对的编码机制以及原先不需要代理对的六万三千多个基本    Unicode    码,合起来叫做UTF-16。也就是说UTF-16    基本上就是    Unicode双字节编码的实现,再加上一个应付未来扩充需要的编码机制。    
   
   ----    UTF-16编码遵循下述原则:    
   对于字符编码值小于0x10000的字符,则直接把编码值转化为一个相等的16位整数。    
   对于字符编码值在0x10000到0x10FFFF之间的字符,将用一个0xD800到0xDBFF(代理高部)之间的16位数,后面紧跟一个0xDC00到0xDFFF(代理低部)之间的16位数来表示。  
   字符编码值大于0x10FFFF的字符将不能用UTF-16来表示。

Unicode文本文件和ASCII的区别
       用程序写了一段unicode编码的文本写到文件中,用记事本打开一看文本是乱的,而且记事本将其认定是ASCII文本。而自己用记事本写了一段文字,保存为unicode文本却正常。       后来无意中发现,用记事本保存的一个unicode空文本文件是2个字节的,而ASCII的空文本文件是0字节的。于是用utrl edit打开了空的unicode文本文件发现,两个字节的内容是FFFE, 而unicode big endian是FEFF, 原来所有unicode文本文件都有一个两字节的文件头。而ASCII的文本文件是没有文件头的,所以unicode编码写成ASCII文件后是乱的。       于是我按照上面描述的,将文本文件前面加上了FFFE两个字节,后面再写自己的字符串,一个unicode的文本文件便成功地写好了。
分享到:
评论

相关推荐

    ASCII、Unicode和UTF-8.doc

    ASCII、Unicode和UTF-8学习文档。 理解这个很重要啊!

    Qt中的字符编码转换:UTF8、Unicode、GBK、ASCII、16进制字符、16进制数值

    Qt字符转换,串口接收数据转为中文显示可用。Qt中的字符编码转换:UTF8、Unicode、GBK、ASCII、16进制字符、16进制数值

    猫猫串口网络调试助手V4.4

    猫猫串口网络调试助手,集成com串口和TCP/UDP服务器,可以说是一款更适合嵌入式开发工程师开发调试使用的串口网路调试助手,支持多种编码格式显示ASCII,Unicode,GB2312/GBK,UTF-8,UTF-7,UTF-32,Hex,Dec,Oct,Bin等,...

    Python 面试题汇总及答案详解完整版

    13 :ascii、unicode、utf-8、gbk 区别 14:字节码和机器码的区别 15:三元运算写法和应用场景 16:Python3 和 Python2 的区别 17:用一行代码实现数值交换 18:Python3 和 Python2 中 int 和 long 区别 19:xrange 和...

    字符编码学习

    这里只指出,虽然都是用多个字节表示一个符号,但是GB类的汉字编码与后文的Unicode和UTF-8是毫无关系的。 3、Unicode Unicode字符集(简称为UCS),国际标准组织于1984年4月成立ISO/IEC JTC1/SC2/WG2工作组,针对...

    Python学习笔记(一).pdf

    基础语法 编码 编码 Python 3 源码⽂件以 UTF-8 编码,所有字符串都是 unicode 字符串。 当然你也可以为源码⽂件指定不同的编码: # -*- coding: cp-1252 -*- 上述定义允许在源⽂件中使⽤ Windows-1252 字符集中的...

    c#中的类型转换详解

    C# 出来也有些日子了,最近由于编程的需要,对 C# 的类型转换做了一些研究,在学习中整理了一份在这里与大家分享,很适用哦! 其内容涉及 C# 的装箱/拆箱/别名、数值类型间相互转换、字符的 ASCII 码和 Unicode 码、...

    如何通过JS实现转码与解码

    这篇文章主要介绍了如何通过JS实现转码与解码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 escape 和 unescape escape()不能直接用于URL编码,它的真正作用...

    Python中的字符串操作和编码Unicode详解

    本文主要给大家介绍了关于 Python中的字符串操作和编码Unicode的一些知识,下面话不多说,需要的朋友们下面来一起学习吧。 字符串类型 str:Unicode字符串。采用”或者r”构造的字符串均为str,单引号可以用双引号...

    python基础学习day04.txt

    UNICODE16(65536个) / UNICODE32 raw 字符串 r'' r"" r'''''' r"""""" r字符串的\不作为转义字符 字符串运算 + * += *= &lt; &lt;= &gt; &gt;= == != in / not in 索引和切片 [] 常用的函数: len(x) max(x) ...

    unicodeKey:我确实看到了有关字母中ASCII代码如何工作的有趣页面,所以我决定制作一个类似页面以进行练习,并了解javascript事件“ onkeypress”和其他一些Strings函数的工作方式

    我确实看到了一个有趣的页面,了解字母中ASCII代码的工作方式,因此我决定制作一个类似页面以供练习,并学习javascript事件“ onkeypress”和其他一些Strings函数的工作方式。 检查它: :red_heart:

    XMl实用大全(资料全易学习)

    (很全的XML的学习资料。) 第一部分 XML简介 9 第1章 XML概览 9 1.1 什么是XML 10 1.1.1 XML是元标记语言 10 1.1.2 XML描述的是结构和语义,而不是格式化 10 1.2 为什么开发人员对XML感到激动 13 1.2.1 设计与特定...

    学习python处理python编码问题

    二、python源文件的编码与解码,我们写的python程序从产生到执行的过程如下: 编辑器—-&gt;源代码—-&gt;解释器—-&gt;输出结果 2.1、编辑器决定源代码的编码格式(在编辑器中设定) 2.2、也必须要解释器知道源代码的编码...

    winhex 模板(102个模板)

    对学习文件结构和数据恢复都有较大帮助 AFP_Structured_Fields.tpl BMP.tpl Boot Sector FAT.tpl Boot Sector FAT32.tpl Boot Sector NTFS.tpl CDFS Directory Entry Ascii.tpl CDFS Directory Entry Unicode.tpl ...

    conlang:我(目前未命名)conlang的脚本和信息; 不保证完整性

    康朗发音文字转语音语音转文字变化艺术的 介绍S'von! 该存储库存储与我的个人conlang(尚未命名)(构造语言的缩写)相... 后者是一个罗马化版本,可以使用通用ASCII / Unicode字符编写。 对于与NLP系统进行交互,通

    python 基础 字符串有关的函数及使用方法

    字符串详细解答及有关函数 ...Unicode字符是python与C语言中巨大的不同,支持该字符系统的python对字符的认识更多,使用也更方便。 Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符

    xml实用大全和轻松学习手册和无废话xml

    7.5.2 其他字符集与Unicode字符集之间的转换 173 7.5.3 如何使用其他字符集编写XML 174 7.6 本章小结 176 第二部分 文档类型定义 177 第8章 文档类型定义和合法性 177 8.1 文档类型定义 177 8.2 文档类型声明 179 ...

    【原创】字符转换器 VB代码

    一个由CSDN zhaoyonghui100原创的字符转换器程序,可以按照要求将汉字转为Unicode或ASCII字符。支持不同的数据格式和进制。本软件可作为软件汉化的辅助工具。 奉上源代码和程序,希望大家交流学习。

    Araxis.Merge.Professional.v2016.4761 最新版破解版 part1

    在应用功能的详细内容,帮助可能是需要学习如何与Araxis合并工作的新手用户非常有帮助。Araxis Merge使一个侧方比较是彩色编码,这将使得精确定位文件之间的相似性和差异很容易。此外,连接线被打开的文件,表明它们...

    XML轻松学习手册--XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解

    DTD文件也是一个ASCII的文本文件,后缀名为.dtd。例如:myfile.dtd。 为什么要用DTD文件呢?我的理解是它满足了网络共享和数据交互,使用DTD最大的好处在于DTD文件的共享。(就是上文DTD说明语句中的PUBLIC属性)。...

Global site tag (gtag.js) - Google Analytics