汉字,字符和字节的问题

navy887 2012-04-17 08:33:22

淘宝注册时输入12个汉字说超出20个字符


京东注册时输入12个汉字说超出20个字符
...全文
429 21 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
navy887 2012-04-19
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 的回复:]
淘宝做了非常细腻的提醒,京东就那样了,其它的网站可能更差了。。我看你也是闲得慌,刚看了一个你的bolg 点着点着就点到这里了。。。。。。。
[/Quote]
好久不见,这么的大红花了,恭喜:)
叶子 2012-04-18
  • 打赏
  • 举报
回复
验证的时候用字节判断的
houyajin 2012-04-18
  • 打赏
  • 举报
回复

通常一个汉字是存储按两个字符来存储的,英文字母为一个字符。
计算机存储信息的最小单位,称之为位(bit),音译比特,二进制的一个“0”或一个“1”叫一位。
计算机存储容量基本单位是字节(Byte),音译为拜特,8个二进制位组成1个字节,一个标准英文字母占一个字节位置,一个标准汉字占二个字节位置。
计算机基础课程基本都会有讲到,或者任意编程语言类的都会说一个汉字的存储情况至少。
navy887 2012-04-18
  • 打赏
  • 举报
回复
这个问题不是个别现象,淘宝和京东只是个例子(两大电商巨头)。
把汉字当作2个字符,既牺牲了用户体验,也是互联网的不严谨,如果没有特别的原因,建议修改。
希望CSDN作为技术论坛可以推动这个事情,帮助互联网纠正错误,不要误导用户,给用户更好的体验。
navy887 2012-04-18
  • 打赏
  • 举报
回复
字符和字节没有直接关系,字节是存储单位,字符就是你看到是几个就是几个,1个汉字是1个字符,1个英文也是1个字符。
konggangk 2012-04-18
  • 打赏
  • 举报
回复
书上是这样说的,char和varchar ,非unicode时,每个字符消耗1个字节,这样的情况我觉得1字节=1字符。
nchar和nvarchar,unicode,每个字符消耗两个字节,这样应该就是 1字符=2字节。


求鉴定。。。
99归一 2012-04-18
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]
京东和淘宝毕竟和CSDN不同,不是面向it工作者的。
[/Quote]
王哥++
navy887 2012-04-18
  • 打赏
  • 举报
回复
我认为如果为了用户体验更不应该把一个汉字当作两个字符,普通用户会很奇怪为什么1个汉字会是2个字符?为什么输入不到20个汉字,就提示用户字符超出。
gogodiy 2012-04-18
  • 打赏
  • 举报
回复
我同意叶子的看法,
对普通用户来说,基本搞不清字符、字节的区别。
反正程序验证的时候按照1个字母1字节,1个汉字2字节来判断就行了。
叶子 2012-04-18
  • 打赏
  • 举报
回复
不允许用户名出现汉字,或用户名只允许输入汉字,就很方便了。
billpu 2012-04-18
  • 打赏
  • 举报
回复
我觉得淘宝京东没错,也不存在什么不严谨的
关键现代计算机的基础是西方人发明的,当初哪有那么多想法,一个打字机就够用了,比如对美国人来说字符(symbol)就是一个字,一套ASCII就足够涵盖了几乎所有的字符,一个字符计算机里就是一个字节来存储,所以对他们来说字符就等于字节也包括字母

但是传到一些其他国家,比如我们汉字256个哪够用啊(还要考虑到英文),所以我觉得对我们来说字符应该不能划等号和汉字,字符已经是西化的东西了我们应该摒弃的或者就认为ASCII里的才能叫字符,计算机里的汉字已经不是字符了,但是平时的生活来说一个汉字还是认为是一个字符
黄_瓜 2012-04-18
  • 打赏
  • 举报
回复
淘宝做了非常细腻的提醒,京东就那样了,其它的网站可能更差了。。我看你也是闲得慌,刚看了一个你的bolg 点着点着就点到这里了。。。。。。。
黄_瓜 2012-04-18
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 的回复:]
通常一个汉字是存储按两个字符来存储的,英文字母为一个字符。
计算机存储信息的最小单位,称之为位(bit),音译比特,二进制的一个“0”或一个“1”叫一位。
计算机存储容量基本单位是字节(Byte),音译为拜特,8个二进制位组成1个字节,一个标准英文字母占一个字节位置,一个标准汉字占二个字节位置。
计算机基础课程基本都会有讲到,或者任意编程语言类的都会说一个汉字的存储情况至少。
[/Quote]
不知道从哪复制的,跟人家的问题相差十万八千里
q465897859 2012-04-17
  • 打赏
  • 举报
回复
1个汉字字符存储需要2个字节,1个英文字符存储需要1个字节。
淘宝和京东应该是用字节算的吧
叶子 2012-04-17
  • 打赏
  • 举报
回复
京东和淘宝毕竟和CSDN不同,不是面向it工作者的。
叶子 2012-04-17
  • 打赏
  • 举报
回复
我理解出现这个问题的原因是为了用户体验。

淘宝上有提示:5-20个字符,一个汉字为两个字符,推荐使用中文会员名。一旦注册成功会员名不能修改。

大部分人都知道,例如:
一个a就是一个字符,一个1就是一个字符。但是大多数网民,应该没有是字节的概念。
叶子 2012-04-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

1个汉字=1个字符=2个字节
感觉京东和淘宝这个都是有问题的,难道我理解的不对?
[/Quote]
我和你的理解是一样的。
navy887 2012-04-17
  • 打赏
  • 举报
回复
1个汉字=1个字符=2个字节
感觉京东和淘宝这个都是有问题的,难道我理解的不对?
叶子 2012-04-17
  • 打赏
  • 举报
回复
1个汉字字符存储需要2个字节,1个英文字符存储需要1个字节。
navy887 2012-04-17
  • 打赏
  • 举报
回复
字符<>字节
加载更多回复(1)

34,838

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧