首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 网络编程-> ASP.NET教程
UTF-8说分明-.NET教程,文件IO
作者:网友供稿 点击:13
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 
首先 ucs(注) 和 unicode 只是分配整数给字符的编码表. 现在存在好几种将一串字符表示为一串字节的方法. 最显而易见的两种方法是将 unicode 文本存储为 2 个 或 4 个字节序列的串. 这两种方法的正式名称分别为 ucs-2 和 ucs-4. 除非另外指定, 否则大多数的字节都是这样的(bigendian convention). 将一个 ascii 或 latin-1 的文件转换成 ucs-2 只需简单地在每个 ascii 字节前插入 0x00. 如果要转换成 ucs-4, 则必须在每个 ascii 字节前插入三个 0x00.

在 unix 下使用 ucs-2 (或 ucs-4) 会导致非常严重的问题. 用这些编码的字符串会包含一些特殊的字符, 比如 \0 或 /, 它们在 文件名和其他 c 库函数参数里都有特别的含义. 另外, 大多数使用 ascii 文件的 unix 下的工具, 如果不进行重大修改是无法读取 16 位的字符的. 基于这些原因, 在文件名, 文本文件, 环境变量等地方, ucs-2 不适合作为 unicode 的外部编码.

在 iso 10646-1 annex r 和 rfc 2279 里定义的 utf-8 编码没有这些问题. 它是在 unix 风格的操作系统下使用 unicode 的明显的方法.

utf-8 有以下特性:

ucs 字符 u+0000 到 u+007f (ascii) 被编码为字节 0x00 到 0x7f (ascii 兼容). 这意味着只包含 7 位 ascii 字符的文件在 ascii 和 utf-8 两种编码方式下是一样的.
所有 >u+007f 的 ucs 字符被编码为一个多个字节的串, 每个字节都有标记位集. 因此, ascii 字节 (0x00-0x7f) 不可能作为任何其他字符的一部分.
表示非 ascii 字符的多字节串的第一个字节总是在 0xc0 到 0xfd 的范围里, 并指出这个字符包含多少个字节. 多字节串的其余字节都在 0x80 到 0xbf 范围里. 这使得重新同步非常容易, 并使编码无国界, 且很少受丢失字节的影响.
可以编入所有可能的 231个 ucs 代码
utf-8 编码字符理论上可以最多到 6 个字节长, 然而 16 位 bmp 字符最多只用到 3 字节长.
bigendian ucs-4 字节串的排列顺序是预定的.
字节 0xfe 和 0xff 在 utf-8 编码中从未用到.
下列字节串用来表示一个字符. 用到哪个串取决于该字符在 unicode 中的序号.

u-00000000 - u-0000007f:  0xxxxxxx  
u-00000080 - u-000007ff:  110xxxxx 10xxxxxx  
u-00000800 - u-0000ffff:  1110xxxx 10xxxxxx 10xxxxxx  
u-00010000 - u-001fffff:  11110xxx 10xxxxxx 10xxxxxx 10xxxxxx  
u-00200000 - u-03ffffff:  111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx  
u-04000000 - u-7fffffff:  1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx  

xxx 的位置由字符编码数的二进制表示的位填入. 越靠右的 x 具有越少的特殊意义. 只用最短的那个足够表达一个字符编码数的多字节串. 注意在多字节串中, 第一个字节的开头"1"的数目就是整个串中字节的数目.

例如: unicode 字符 u+00a9 = 1010 1001 (版权符号) 在 utf-8 里的编码为:

11000010 10101001 = 0xc2 0xa9

而字符 u+2260 = 0010 0010 0110 0000 (不等于) 编码为:

11100010 10001001 10100000 = 0xe2 0x89 0xa0

这种编码的官方名字拼写为 utf-8, 其中 utf 代表 ucs transformation format. 请勿在任何文档中用其他名字 (比如 utf8 或 utf_8) 来表示 utf-8, 当然除非你指的是一个变量名而不是这种编码本身.


注:
什么是 ucs ?

国际标准 iso 10646 定义了 通用字符集 (universal character set, ucs). ucs 是所有其他字符集标准的一个超集. 它保证与其他字符集是双向兼容的. 就是说, 如果你将任何文本字符串翻译到 ucs格式, 然后再翻译回原编码, 你不会丢失任何信息.

ucs 包含了用于表达所有已知语言的字符. 不仅包括拉丁语,希腊语, 斯拉夫语,希伯来语,阿拉伯语,亚美尼亚语和乔治亚语的描述, 还包括中文, 日文和韩文这样的象形文字, 以及 平假名, 片假名, 孟加拉语, 旁遮普语果鲁穆奇字符(gurmukhi), 泰米尔语, 印.埃纳德语(kannada), malayalam, 泰国语, 老挝语, 汉语拼音(bopomofo), hangul, devangari, gujarati, oriya, telugu 以及其他数也数不清的语. 对于还没有加入的语言, 由于正在研究怎样在计算机中最好地编码它们, 因而最终它们都将被加入. 这些语言包括 tibetian, 高棉语, runic(古代北欧文字), 埃塞俄比亚语, 其他象形文字, 以及各种各样的印-欧语系的语言, 还包括挑选出来的艺术语言比如 tengwar, cirth 和 克林贡语(klingon). ucs 还包括大量的图形的, 印刷用的, 数学用的和科学用的符号, 包括所有由 tex, postscript, ms-dos,ms-windows, macintosh, ocr 字体, 以及许多其他字处理和出版系统提供的字符.

文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·ASP.NET三层架构示例(中文版)-.NET教程,面向对象编程
·C#自定义控件制作篇-.NET教程,C#语言
·asp.net上传图片时,产生预览
·关于DataGrid 数据导入Excel乱码-ASP教程,数据库相关
·ado.net中数据库连接方式
·用asp.net(c#)连接oracle数据库的方法
·网页制作小技巧-ASP教程,ASP应用
·动态改变asp.net网页的标题
·asp.net中利用cookies保持客户端信息
·关于C#中switch语句的一点注意-.NET教程,C#语言
最新文章
·用vb.net 2005编写定时关机程序_vb/vb.net教程
·vb.net实现窗体图标最小化到状态栏_vb/vb.net教程
·如何提高google adsense单价:渠道篇_网赚技巧
·做百度主题推广的经验谈_网赚技巧
·解读电子商务规划关键词_站长心得
·手把手教你建立自己的网站_站长心得
·学网页设计与网页制作,你该做些什么?_站长心得
·写给新人的google排名知识_google推广
·google网络推广adwords帐户申请解析_google推广
·如何合理提高google adsense的收入_google推广
相关主题
  • utf-8转换gb2312编码,解决统计google搜索来源关键字乱_google推广
  • utf-8转gb2312函数_asp技巧
  • utf-8字符串转为ansistring_delphi教程
  • UTF-8转GB2312函数-ASP教程,ASP技巧
  • UTF-8轉GB2312函數-ASP教程,脚本编码
  • 西部数码虚拟主机

    友情链接
    CNNIC 西部数码
    万网 自助建站
    虚拟主机 asp空间
    域名注册 域名
    域名申请 主页空间
    论坛空间 网站空间
    国际域名 虚拟空间
    空间租用 DDOS防火墙
    成都主机托管 四川主机托管
    主机租用 服务器租用
    网站目录 自助建站
    虚拟主机 网址大全
    软件下载
    自助链接
    虚拟主机资讯 特价虚拟主机
    版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
    关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
    特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
    发表评论 打印  刷新     关闭