小罗身高:什么是半角字符

来源:百度文库 编辑:神马品牌网 时间:2024/05/03 04:00:59
不知所说的是什么!!!垃圾

什么是半角字符、全角字符?
fllc ((风陵兰草)) 2003-05-16 20:02:05 在 .NET技术 / C# 提问
什么是半角字符、全角字符?
用什么方法来区分?
(ASCII 属于何种字符编码?)

问题点数:10、回复次数:6

1楼 ArLi2003 (阿利,MSN:url@163.com) 回复于 2003-05-16 21:37:38 得分 0
ABCDEFG 是半角 ABCDEFG是全角,只在中文才有的概念,意思是每个英文字符的大小也要相当于一个中文字以符合排版的需求

ascii 是一种编码机制,早期包含了255 个计算机所能处理和受支持的字符、控制符的集合或者说是标准,现在已经得到扩充了

Top
2楼 fllc ((风陵兰草)) 回复于 2003-05-20 21:56:00 得分 0
: ArLi2003(阿利 有好工作叫我) 那该怎样用代码来区分半角全角呢?

Top
3楼 jhnhu (玩的就是技术) 回复于 2003-05-20 23:05:16 得分 0
你把这些字 转成byte[] 看看代码有什么不同

Top
4楼 ArLi2003 (阿利,MSN:url@163.com) 回复于 2003-05-21 19:24:57 得分 0
A和A是不同的,如何区别可以简单的理解为如何区别中文和英文字符
简单的比如:

string s = null;

s = "A";
MessageBox.Show((s[0] > 255) ? "中文或全角" : "英文");

s = "A";
MessageBox.Show((s[0] > 255) ? "中文或全角" : "英文");

另外,上文的ascii 写的有些错,应为:早期包含了128 个计... 而不是255个

类似的文档很多,理解它并不难

Top
5楼 ArLi2003 (阿利,MSN:url@163.com) 回复于 2003-05-21 19:33:06 得分 10
上例中严格的说有些错误,只是用来示例给你瞧半全角,用来识别中英文是不严格的,因为还有其它国家文字,你可以用下面的例子得到它的编码值就知道差别了:

string s = null;

s = "A";
MessageBox.Show(((s[0] > 255) ? "全角" : "半角") + " ASCII of " + Convert.ToInt32(s[0]).ToString("x").ToUpper());

s = "A";
MessageBox.Show(((s[0] > 255) ? "全角" : "半角") + " ASCII of " + Convert.ToInt32(s[0]).ToString("x").ToUpper());

//中文的Unicode大概是从4E00 到 9FA0,所以上例一个是0x41 一个是0xFF21 这下明白了?

Top
6楼 fllc ((风陵兰草)) 回复于 2003-05-22 17:56:43

半角--指一字符占用一个标准的字符位置。
通常的英文字母、数字键、符号键都是半角的,半角的显示内码都是一个字节。在系统内部,以上三种字符是作为基本代码处理的,所以用户输入命令和参数时一般都使用半角。

我也是