Java 中 String 和 byte [] 的转换

在 Java 的网络编程中,通过 socket 发送和接收到的数据是 byte [ ] 类型的,而我们希望发送的消息一般是用 String 类型表示的,所以在 Java 的网络编程中,发送端需要将 String 类型转换为 byte [ ] 类型,接收端需要将 byte [ ] 类型转换为 String 类型。

String 类型转换为 byte [ ] 类型

代码如下:

1
2
3
4
5
6
7
8
9
10
String sendString="hello";  
byte[] sendByte=sendString.getBytes("UTF8");
```
除了UTF8编码方式外,还可以采用"GBK","IOS-8859-1"等编码方式,这几种编码方式的差别在于表示同一个字符采用的字节数不同,而且为了中文显示不乱码,一般采用UTF8的编码方式。

## byte[ ]类型转换为String类型
代码如下:

```java
String receiveString=new String(receiveBytes,"UTF8");

receiveBytes 为需要转为 String 的字节数组,"UTF8" 的作用也是为了指定转换采用的编码方式,省略时会采用系统默认的编码方式。