社区
Delphi
帖子详情
请问,Unicode Character Set 和 DBCS,有何不同?
cutepine
2003-08-25 10:08:05
请问,Unicode Character Set 和 DBCS,有何不同?
...全文
141
3
打赏
收藏
请问,Unicode Character Set 和 DBCS,有何不同?
请问,Unicode Character Set 和 DBCS,有何不同?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
DWGZ
2003-08-25
打赏
举报
回复
Borland是这样解释的
要书的请到
http://expert.csdn.net/Expert/topic/2163/2163244.xml?temp=.3149225
-----------------------------------------------------------------
Windows 和Linux 都支持单字节和多字节字符集,同样也支持Unicode。使用单字节字符集(SBCS),
字符串的每个字节表示一个字符。ANSI 字符集被许多西方(国家的)操作系统使用,它是单字节字符
集。
在多字节字符集(MBCS)中,一些字符由一个字节表示,而另一些则使用多个字节。多字节字符的第
一个字节称为头字节(lead byte)。通常,在多字节字符集中,前128 个字符对应于7 位ASCII 字符(0-127),
任何序数值大于127 的字节为多字节字符的头字节。只有单字节字符能包含空值(#0)。多字节字符集
(特别是双字节字符集,DBCS),被亚洲语言广泛使用,但Linux 使用的UTF-8 字符集是Unicode 的一
种多字节编码。
在Unicode 字符集中,每个字符用两个字节表示,所以,一个Unicode 字符串是由双字节组成的序列。
Unicode 字符和字符串也被称为宽字符和宽字符串。前256 个Unicode 字符被映射到ANSI 字符集。
Windows 操作系统支持Unicode(UCS-2)。Linux 操作系统支持UCS-4,是UCS-2 的超集。Delphi/Kylix
在两个平台上都支持UCS-2。
Object Pascal 支持单字节和多字节字符以及字符串,适用的类型有:Char、PChar、AnsiChar、PAnsiChar
和AnsiString。对多字节字符串使用索引是不可取的,因为S[i]表示S 中第i 个字节(不一定是第i 个字
符),但是,标准字符串处理函数有多字节版本,它们还实现了locale-specific ordering for characters(多
字节函数的名称通常以Ansi 开头,比如StrPos 的多字节版本是AnsiStrPos)。多字节支持依赖于操作系
统和本地设置(current locale)。
Object Pascal 使用WideChar、PWideChar 和WideString 类型支持Unicode 字符和字符串。
DelphiBoy2003
2003-08-25
打赏
举报
回复
DBCS是一种双字符集,不过不太好,会引起附加编程!因为DBCS对待ASCII码仍然是一个字节代表一个字符,而中文这类字符才是两个字节代表一个字符。
而Unicode则是无论中文英文,都是用双字节来表示一个字符,这样就不会引起附加编程
lxpbuaa
2003-08-25
打赏
举报
回复
DBCS(DoubleBytes Characters Set)是一种字符集规范,它规定用两个字节表示一个字符,这样和单字节字符集相比,可以容纳更多的字符。Unicode Character Set 是按照DBCS规范实现的一种字符集方案。
————————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
————————————————————————————————————
Multi-Byte
Character
Set
&
Unicode
Character
Set
由于Windows里使用的多字节字符绝大部分是两个字节长,所以MBCS常被用
DBCS
(double-byte
character
set
,
DBCS
)代替。像SBCS一样,
DBCS
字符串的结束标志也是一个单字节表示的0。 统一的双字符集 (
Unicode
...
Multi-Byte
Character
Set
& Use
Unicode
Character
Set
第一种编码类型是单子节字符集(single-byte
character
set
or SBCS)。在这种编码模式下,所有的字符都只用一个字节表示。ASCII是SBCS。一个字节表示的0用来标志SBCS字符串的结束。 第二种编码模式是多字节
Multi-Byte
Character
Set
& Use
Unicode
Character
Set
.
所有的 string 类都是以C-style字符串为...第一种编码类型是单子节字符集(single-byte
character
set
or SBCS)。在这种编码模式下,所有的字符都只用一个字节表示。ASCII是SBCS。一个字节表示的0用来标志SBCS字...
Unicode
和 UTF-8
有何
区别?
很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成
不同
的状态,以表示世界上的万物。他们看到8个开关状态是好的,于是他们把这称为”字节“。再后来,他们又做了一些可以处理这些字节的机器,机器开动...
重拾VB6(32):Issues Specific to the Double-Byte
Character
Set
(
DBCS
)
(3)
DBCS
is a different
character
set
from
Unicode
. Because Visual Basic represents all strings internally in
Unicode
format, both ANSI
character
s and
DBCS
character
s are converted to
Unicode
and ...
Delphi
5,388
社区成员
262,730
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章