
socket 网络字节转换 10
我通过socket连接传输,将字符串大小转成网络字节,然后将传输的字符串转成byte数组,那怎么把网络字节和byte数组相加呢,请问这样传输对吗?例:publicvoid...
我通过socket连接传输,将字符串大小转成网络字节,然后将传输的字符串转成byte数组,那怎么把网络字节和byte数组相加呢,请问这样传输对吗?
例:
public void getStr(){
String strSendXml = "<name id="name" value="aaaaaaa">";
byte[] size=toLH(strSendXml.length());
server=new Socket("197.0.0.17",8888);
BufferedInputStream in = new BufferedInputStream(server
.getInputStream());
PrintWriter out = new PrintWriter(server.getOutputStream());
out.println(size+strSendXml.getBytes());
out.flush();
}
public static byte[] toLH(int n) {
byte[] b = new byte[4];
b[0] = (byte) (n & 0xff);
b[1] = (byte) (n >> 8 & 0xff);
b[2] = (byte) (n >> 16 & 0xff);
b[3] = (byte) (n >> 24 & 0xff);
return b;
} 展开
例:
public void getStr(){
String strSendXml = "<name id="name" value="aaaaaaa">";
byte[] size=toLH(strSendXml.length());
server=new Socket("197.0.0.17",8888);
BufferedInputStream in = new BufferedInputStream(server
.getInputStream());
PrintWriter out = new PrintWriter(server.getOutputStream());
out.println(size+strSendXml.getBytes());
out.flush();
}
public static byte[] toLH(int n) {
byte[] b = new byte[4];
b[0] = (byte) (n & 0xff);
b[1] = (byte) (n >> 8 & 0xff);
b[2] = (byte) (n >> 16 & 0xff);
b[3] = (byte) (n >> 24 & 0xff);
return b;
} 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询