黑马程序员技术交流社区
标题:
"李四".getBytes()
[打印本页]
作者:
李大伟
时间:
2013-2-17 11:41
标题:
"李四".getBytes()
本帖最后由 李大伟 于 2013-2-19 14:51 编辑
谁给解释下这个 getBytes() 是什么意思,怎么用,感谢!!!
作者:
李培根
时间:
2013-2-17 12:09
将“李四”这个字符串转换成字节数组。
作者:
罗正荣
时间:
2013-2-17 12:22
额。。。楼主102万积分啊{:soso_e127:}
作者:
张晋瑜
时间:
2013-2-17 13:33
汗,告诉我你这积分怎么刷出来的,我就告诉你{:soso_e102:}
作者:
张豪杰
时间:
2013-2-17 15:26
String.getBytes()是返回字符串在操作系统默认编码格式下的字节数组。
String.getBytes(String decode)方法会根据指定的decode编码返回某字符串在该编码下的byte数组表示
比如
byte[] byt1="李四".getBytes();
byte[] byt2="李四".getBytes("GBK");
byte[] byt3="李四".getBytes("UTF-8");
byte[] byt4="李四".getBytes("ISO8859-1");
复制代码
以上代码分别返回”李四"这两个汉字在系统默认编码、GBK、UTF-8和ISO8859-1编码下的byte数组。
如果你对字符编码还存在疑惑的话,可以去看看毕老师的JAVA基础教程视频第21天的“字符编码"那一节
作者:
李洪因
时间:
2013-2-17 20:08
1 byte[] getBytes()
使用平台的默认字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
2 byte[] getBytes(Charset charset)
使用给定的 charset 将此 String 编码到 byte 序列,并将结果存储到新的 byte 数组。
3 void getBytes(int srcBegin, int srcEnd, byte[] dst, int dstBegin)
已过时。 该方法无法将字符正确转换为字节。从 JDK 1.1 起,完成该转换的首选方法是通过 getBytes() 方法,该方法使用平台的默认字符集。
4 byte[] getBytes(String charsetName)
使用指定的字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
作者:
胥文
时间:
2013-2-17 22:40
楼主的“李四”.getBytes()就是将字符串“李四”使用默认的编码转化成byte数组
也就是说这是一个编码的过程要用到编码的方式(比如“GBK”,"UTF-8"等)
个人觉得此方法主要是注意该编码过程是使用什么编码方式,以免在解码时出现乱码
如果编码使用的“GBK”编码方式,而解码使用的“UTF-8"就用可能出错,特别是在网络传输中要理解这个编码方式
不然会出现乱码的
//比如在网路的一端用UTF-8编码
byte[] b = "李四".getBytes("UTF-8");
//在网络的另一端用GBK编码,此时就会出现乱码
System.out.println(new String(b,"GBK"));
作者:
李培根
时间:
2013-2-17 22:44
zhangjinyu1991 发表于 2013-2-17 13:33
汗,告诉我你这积分怎么刷出来的,我就告诉你
注册时间早的都是这个积分。
作者:
罗海清
时间:
2013-2-18 10:13
意思是将李四这两个字,化为字节数组,这个数组里面装的数字,就是编码
按照这些编码可以,查出相应的中文,也就是李四
作者:
易杰
时间:
2013-4-13 00:34
"李四"//用双引号括起来表示是一个字符串,在Java中,字符串是一个String类的对象。也就是说"李四"是一个String类的对象,而String类中有个getBytes() 方法。所以"李四"这个String类的对象,就能调用getBytes() 方法。因为对象具备哪些属性和方法,取决于这个对象所属的类中定义了哪些属性和方法。
getBytes() 方法的作用,就是将字符串对象转换成字节数组。
"李四".getBytes() 的意思是将"李四"字符串对象转换成字节数组
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2