一个汉字占几个字节是不是不太好记呢,编码不一样则占字节位就不一样。下面用一段简短的代码了解一下一个汉字占几个字节。

示例

String s = "情系IT";

try {

byte[] bytes1 = s.getBytes("gbk");

for (byte b : bytes1) {

System.out.print(Integer.toHexString(b & 0xff)+" ");

}

System.out.println();

byte[] bytes2 = s.getBytes("utf-8");

for (byte b : bytes2) {

System.out.print(Integer.toHexString(b & 0xff)+" ");

}

} catch (UnsupportedEncodingException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

下面是运行结果:

解析

Integer.toHexString(int a),这个是java API提供的一个方法,目的是返回整数参数的字符串表示形式,作为16位中的无符号整数。

为什么要用b & 0xff ?

Integer.toHexString(int a),需要的是一个int类型的参数。

0xff代表的就是16进制的11111111。

我们知道byte是1个字节,int是4个字节,也就是要将8位转换为32位。如果无符号位的话,我们直接补0即可。因此&0xff就是为了保证符号位。

举个例子:-127转为二进制为11111111,取反求补则为10000001,转十六进制则为81,继续转成十进制,看成无符号数就会发现变成了129。

总结

根据结果我们可看出,

字符串是utf-8编码,一个汉字三个字节,一个字母一个字节。

字符串是gbk编码时,一个汉字两个字节,一个字母一个字节。

如果想看其他编码下的情况,可复制上面的代码,将字符串进行其他编码查看即可。

注意:如果字符串不进行编码,则默认为项目的编码。

如果文章对您有帮助,请记得点赞关注哟~

欢迎大家关注我的公众号:情系IT,每日推送技术文章供大家学习参考。

java一个中文几个字节_一个汉字占几个字节你真的记住了吗?相关推荐

  1. 中文标点符号占用几个字节_英文字符占几个字节?汉字字符、还有标点呢?????...

    展开全部 一个英文字符等于1个字节,一个中文(含繁体)字符等于3个字节:中文标点占3个字节,英32313133353236313431303231363533e59b9ee7ad94313334313 ...

  2. Oracle中一个汉字占几个字节

    Oracle中一个汉字占几个字节? 某天,在向一个字段类型为CHAR(6)的表中插入数据'大沽口'时报错,提示'too large for column(actual: 9 ,maximum: 6)' ...

  3. java char是几个字节_关于java中char占几个字节,汉字占几个字节

    我们平常说,java中char占2个字节,可又说汉字在不通的编码格式中所占的位数是不同的,比如gbk中汉字占2个字节,utf8中多数占3个字节,少数占4个.而所有汉字在java程序中我们都可以简单的用 ...

  4. java中char是几个字节_关于java中char占几个字节,汉字占几个字节

    我们平常说,java中char占2个字节,可又说汉字在不通的编码格式中所占的位数是不同的,比如gbk中汉字占2个字节,utf8中多数占3个字节,少数占4个.而所有汉字在java程序中我们都可以简单的用 ...

  5. java一个中文几个字节_java一个汉字占几个字节;一个字符占几个字节?redis一个汉字占几个字节;一个字符占几个字节?...

    脱离字符集编码 谈这个问题没什么实际意义 我不知道你讲的Java 中汉字是几个字节具体是什么意思 Java 中 Character 采用的是 utf-16 编码,那么就是两个字节(0----65535 ...

  6. php汉字占几个字节,php一个汉字几个字节

    字符的简介: 在js中,中文占两个字符,英文占一个字符: 在php中,不同编码下不相同,在GBK/GB2312编码下一个中文占2个字符,UTF-8/unicode编码下一个中文占3个字符: 推荐:&l ...

  7. 一个汉字占几个字节的问题

    一个汉字占几个字节的问题 大家都说一个汉字占两个字节(byte) 但是为什么运行程序会得到如下结果 String name="宋"; int a=name.getBytes(&qu ...

  8. 一个汉字占多少个字节

    一个汉字占多少个字节 不同编码方式1个英文字母占的字节是不同的: 1,ASCII码:一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间. 2,UTF-8编码:一个英文字符等于一个 ...

  9. oracle和mysql存储汉字_mysql和oracle的一个汉字占几个字节

    以前一直使用oracle11g,一个汉字占3个字节,所以在操作mysql时也一直这样分配长度. 今天测试了下发现不对了 可以看到第一个的长度确实是15,但是第二个为什么是5? 在网上找到资料:char ...

  10. utf-8 中的一个汉字占几个字节

    utf-8 中的一个汉字占几个字节 占 2 个字节的:〇 占 3 个字节的:基本等同于 GBK,含 21000 多个汉字 占 4 个字节的:中日韩超大字符集里面的汉字,有 5 万多个 1 个 utf8 ...

最新文章

  1. .net core 17
  2. 如何去除使用inline-block之后的间距(二)?
  3. C标准库stdlib.h概况
  4. Java - 探究前后分离带来的跨域问题
  5. ###STL学习--标准模板库
  6. c# xml的增删改查操作 xmlDocument 的用法
  7. 实验4 [bx]和loop的使用
  8. 七台河计算机网络工程专业,网络工程本科专业介绍
  9. mysql中视图和表的区别及联系_MySQL中Update、select联用操作单表、多表,及视图与临时表的区别...
  10. php酒店管理论文,酒店管理毕业论文
  11. 工具的使用——搜狗输入法
  12. html5新增的一个input属性
  13. 【openjudge 计算概论(A)】[函数递归练习(3)]
  14. python安装pyaudio
  15. IDEA2019开发WebService实例
  16. 5.3 恶意代码功能演示示例(上兴远程控制2014版)
  17. Cannot access a disposed object. A common cause of this error is disposing a context that was resolv
  18. ORACLE大数据查询
  19. OpenGL多重纹理使用与理解
  20. 中小企业信息安全:基本原则

热门文章

  1. 关于图片的Exif信息
  2. 计算机备份u盘,如何把电脑系统备份到u盘_怎么备份系统到u盘-win7之家
  3. libSVM简介及核函数模型选择
  4. 【贪玩巴斯】带你一起攻克英语语法长难句—— 第六章——英语的特殊结构 ——2022年3月19日-20日
  5. Office ❀ PPT图形中的合并形状梳理
  6. linux cab文件怎么安装包,IE控件cab包手动安装
  7. 打开360浏览器显示无法连接服务器错误,最近360浏览器老是无法打开网页,提示错误如图,但是只要刷新就可以打开了,这是怎么回事?...
  8. 他因“上帝粒子”获诺奖,却火速搬到乡下:它毁了我的生活
  9. 超人游戏_将障碍画在背景中用pygame.mask.from_threshold实现超人和不同颜色障碍精准碰撞检测
  10. 金蝶ERP服务器系统中间件,中间件在ERP系统中的作用及发展趋势