java中String对象的getBytes方法是干什么的?

getBytes()
和getBytes("utf-8")
分别是什么意思?

String的getBytes()方法是得到一个系统默认的编码格式的字节数组

getBytes("utf-8") 得到一个UTF-8格式的字节数组

如果你的java指定UTF-8编码则两个方法返回的数组一样。
如果你java工程是GBK的两个方法返回不同。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-08-31
都是将一个string类型的字符串转换成byte类型并且存入一个byte数组中。
在java中的所有数据底层都是字节,字节数据可以存入到byte数组。
存储字符数据时(字符串就是字符数据),会先进行查表,然后将查询的结果写入设备,读取时也是先查表,把查到的内容打印到显示设备上
getBytes()是使用默认的字符集进行转换,getBytes(“utf-8”)是使用UTF-8编码表进行转换。本回答被网友采纳
第2个回答  2012-08-30
String的getBytes()方法是得到一个系统默认的编码格式的字节数组
getBytes("utf-8") 得到一个UTF-8格式的字节数组

如果你的java指定UTF-8编码则两个方法返回的数组一样。
如果你java工程是GBK的两个方法返回不同。

网上有很多这样的例子和介绍
第3个回答  2012-08-29
把String转换成bytes,各种编码转换成的bytes不同,比如UTF-8每个汉字转成3bytes,而GBK转成2bytes,所以要说明编码方式,否则用缺省编码。
相似回答