1)java字符都是unicode2个字节表示的。而utf-8一个汉字用三个字节不太理解。
5条回答 默认 最新
- youhebuke52011 2015-07-31 19:14关注解决 无用评论 打赏 举报
关注 解决 无用评论 打赏 举报- JPF1024 2015-07-31 20:51关注解决 无用评论 打赏 举报
- BlueZhang521 2015-07-31 23:24关注解决 无用评论 打赏 举报
关注 解决 无用评论 打赏 举报
1)java字符都是unicode2个字节表示的。而utf-8一个汉字用三个字节不太理解。
收起
UTF-8下汉字其实是占了2-4个字节的(UTF-8是不定长的,以前还可以到5-6个字节,后来不用那么长了)
UTF-8中的中文一般是2-4个字节,可以用记事本这类工具来验证,数据库(只验证了oracle库)如果是UTF-8的格式的话,那么一个汉字或者符号(乱码情况)会占3个字节
Unicode和UTF-16的编码下,不管是英文字符还是汉字字符,都占两个字节
Unicode规范中推荐的标记字节顺序的方法是BOM。BOM不是“Bill Of Material”的BOM表,而是Byte Order Mark。
(Unicode是一种字符编码方法,不过它是由国际组织设计,可以容纳全世界所有语言文字的编码方案。)
百度,google一大堆。可以自己去详细了解。
主要做什么呢?这个平时编码的时候需要关注吗?
只是编码方式不同,导致了编码长度不一样你只需要记住:写文件用什么方式写,读取就用什么方式读就不会出现乱码
utf-8汉字用不是三个字节吧。utf-8是可伸缩的,我记得是2个。
报告相同问题?