Haisen大王 2015-07-31 18:59 采纳率: 42.9%
浏览 1574

java编码问题,好麻烦。

1)java字符都是unicode2个字节表示的。而utf-8一个汉字用三个字节不太理解。

  • 写回答

5条回答 默认 最新

  • youhebuke52011 2015-07-31 19:14
    关注

    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是一种字符编码方法,不过它是由国际组织设计,可以容纳全世界所有语言文字的编码方案。)

    评论
  • gao_chun 博客专家认证 2015-07-31 19:17
    关注

    百度,google一大堆。可以自己去详细了解。

    评论
  • JPF1024 2015-07-31 20:51
    关注

    主要做什么呢?这个平时编码的时候需要关注吗?

    评论
  • BlueZhang521 2015-07-31 23:24
    关注

    只是编码方式不同,导致了编码长度不一样你只需要记住:写文件用什么方式写,读取就用什么方式读就不会出现乱码

    评论
  • Evankaka 博客专家认证 2015-08-01 02:15
    关注

    utf-8汉字用不是三个字节吧。utf-8是可伸缩的,我记得是2个。

    评论
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部