java socket发送数据的类型 20
是socketudp只能用String定义数据吗?如果不是,我想发送int定义的数据该怎么写?...
是socket udp只能用String定义数据吗?如果不是,我想发送int定义的数据该怎么写?
展开
3个回答
2014-05-13
展开全部
socket 可以发送 byte[ ] 类型的数据,你可以先把想要发送的数据转化为字节数组 (byte[ ])。然后写就行了
更多追问追答
追问
能具体点吗?
追答
首先,基本数据类型都能转成 byte 数组(boolean类型除外,不过可以用0和1代替),具体的转byte数组方法下面列一个 int 转 byte 数组的,其他的你自己去搞,如果连这个都不想搞都指望别人给你,那就没有意义了。
public static byte[] intToBytes(int v) {
byte[] b = new byte[4];
b[0] = (byte) ((v >>> 24));
b[1] = (byte) ((v >>> 16));
b[2] = (byte) ((v >>> 8);
b[3] = (byte) ((v >>> 0));
for(int i=0;i<b.length;i++)
System.out.println(b[i]);
System.out.println(Integer.toBinaryString(v));
return b;
}
假设上面转化来的 byte数组 为data ,而,socket.getOutputStream().write(data),就能把它写出去了。
另一方接受的时候,把这个接收到的数组再转回来就是了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询