Java编码
来源:互联网 发布:windows arp命令事例 编辑:程序博客网 时间:2024/06/05 05:34
之前看到有人说Java中汉字占两字节,现在就来纠正一下这个错误。
- 首先,这个问题依赖具体的编码格式:
GBK:
public class Main { public static void main(String[] args) { System.out.println("GBK编码:"+"学习".getBytes().length); System.out.println("GBK编码:"+"Java".getBytes().length); }}
输出结果:
由结果可以看出,GBK编码,一个汉字占两个字节
UTF-8:
public class Main { public static void main(String[] args) { System.out.println("UTF-8编码:"+"学习".getBytes().length); System.out.println("UTF-8编码:"+"Java".getBytes().length); }}
由结果可以看出,UTF-8编码,一个汉字占3个字节
2.一共有多少汉字?
据说,《中华字海》是收录汉字最多的大型字书,共收录楷书汉语单字85568个。
但是,2^16=65536,GBK不可能收录所有的汉字(当然汉字也收录不完,因为会被一直创造),日常生活也用不了8万多汉字。
1995年的汉字扩展规范GBK1.0包含21886个符号,它分为字符区和图形符号区。字符区包括21003个字符。
具体关于汉字编码的问题,可以查看以下链接:
http://zhidao.baidu.com/link?url=jtHQLRqdtpERRYikquNzmChiOnCV2KfPjUCRI4jxhhSRkeZLd4sW44_sy9zETamJbgH4f3Ih1Y3EPZZkvkV96q
3.UTF-8与Unicode的关系
UTF-8是Unicode的实现方式之一,它规定了字符如何在计算机中存储、传输等,详情可查看一下链接:
http://alexiter.iteye.com/blog/1533109
Unicode符号范围 | UTF-8编码方式
(十六进制) | (二进制)
——————–+———————————————
0000 0000–0000 007F | 0xxxxxxx
0000 0080–0000 07FF | 110xxxxx 10xxxxxx
0000 0800–0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx
0001 0000–0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
- JAVA编码
- java 编码
- java编码
- java编码
- java编码
- java 编码
- java编码
- java编码
- Java编码
- Java编码
- java编码
- java 编码
- java编码
- java 编码
- java 编码
- JAVA编码
- java 编码
- java 编码
- Filtering JSON feeds from Spring 3's REST support using addMixInAnnotations
- Embedded Linux S3C2440 Environment Startup
- ssh查询分页(同页面的多个方法查询)的思路分析:
- 判断二叉树是不是平衡二叉树
- 如何在本地环境配置github
- Java编码
- 斐波那契数列通项公式
- Github的学习使用
- 王学岗app设计框架:mvc框架
- 生产者/消费者模式
- LoRa组网案例1:温度采集,主动上报
- .html(),.text()和.val()的差异总结
- Android RecyclerView 自动加载更多
- Go编程入门教程