中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > C/C++
关于Unicode
作者:未知 时间:2005-09-13 23:29 出处:Blog.ChinaUnix.net 责编:chinaitpower
              摘要:关于Unicode
摘抄自 C# Text Manipulation String Handling and Regular Expressions Handbook by Francois Liger

1)Unicode对于每一个字符都提供唯一的值,而不管使用什么样的平台,也不管什么程序和编程语言

2)Unicode采用2字节编码方式,可以代表256×256=65536个字符。其存储空间和内存空间是采用ASCII的两倍

3)Unicode代理(surrogate)

4)Unicode的三种编码方式UTF(Unicode Transformation Formats)

  • UTF-8(8bit编码方式)是一种通用的HTML和XML编码,因为它的编码方案与ASCII标准的字符向后兼容。其优点是与ASCII有一一对应的关系
  • UTF-16(16bit编码方式)标准的Unicode编码方式.Net FrameWork采用的就是UTF-16编码方式
  • UTF-32(32bit编码方式)只是一种规范,并不实用。


C#中使用char定义一个Unicode,char结构中最有用的方法是GetUnicodeCategory()

string band;

band="The Albion Band";

Console.WriteLine(char.IsWhiteSpace(band,3))        //echo true

Console.WriteLine(char.IsPunctuation('A'));            //echo False

IsWhiteSpace()方法,可以测试字符串中的第4个字符是否是空白,索引是从0开始的。

当字符串的长度存储在其开始处,称为结构化字符串或pascal字符串,一个特殊字符表示结束标记的则像C的字符串定义类型,其特点是方法灵活,允许字符串任意长度,效率比较高。字符串操作是一项比较浪费资源的活动,提升其效率的方法有:

  • 高速缓存技术,微软采用BSTR(Binary Strings)BSTR以空字符为结束标记
  • 内置,内置池中有字符的散列表,当对字符进行比较或搜索时仅比较其散列值

字符串的五类操作

  • 连接字符串
  • 从字符串中抽取子窜
  • 比较字符串
  • 转换字符串
  • 格式化字符串

内存的再分配会占用很多的操作时间&资源,所以连接字符窜操作时最耗资源的,因此预先知道字符串长度是最好的方法。

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有