一个汉字占两个字母的位置的问题
上一篇 /
下一篇 2013-10-08 11:07:49
Java中,采用Unicode编码,是双字节编码,这个编码可以看作是内码。
通常,为了方便传输和处理,会采用其他编码对unicode编码做些变换,那么这种编码可以看作是外码,如GBK,UTF-8。
测试中,对于输入栏位通常会有字符个数的要求,那么我们该如何确定,输入的字符个数是否符合标准呢?
老师讲,一个汉字占两个英文字符的位置,那么如果一个栏位要求10个字符,如果全是汉字的话,那就只能输入5个。
对于这,我感觉还是有些疑问:
一个汉字也是一个字符,虽然编码中是占两个英文字符的位置,但个数的话,能这样计算吗?
个人觉得,到底输入多少个汉字,是与编程中判断输入字符个数的方法相关的。
第一种:程序中把输入的内容作为字符串处理,判断字符串的长度,那么,一个汉字和一个英文字符是一样的。
第二种:把输入做getBytes("GBK")处理,判断字节数组的长度,那么一个汉字相当于两个英文字符。
备注:该网站日志发布中,日志标题的字符限制,是汉字40个,但英文字符80个。
是否是,现实中,只要涉及字符个数,都是这种情况?
收藏
举报
TAG: