代码改变世界

getBytes()与toCharArray()差异

2022-05-17 17:25  钟铧若岩  阅读(145)  评论(0编辑  收藏  举报

String.getBytes()是将字符串转化为一个字节数组。

而String.toCharArray()是将一个字符串转化为一个字符数组。

例如:byte a[] ="国庆60周年".getBytes();

byte b[]="国庆60周年".toCharArray();

那么字节数组和字符数组有什么区别呢?

 

字节输入流和输出流的read和write方法使用字节数组读写数据,即以字节为基本单文处理数据。

因此,字节流不能很好地操作Unicode字符,例如,一个汉字在文件中占用2个字节,如果使用字节流,读取不当会导致“乱码”的现象。

字节类 FileInputStream 和FileOutputStream都是io下的类 而字符输出流 FileReader 和 字符输入流FileWriter都是Reader和Writer的子类。