socket = new Socket(“192.168.1.156”, 1234);
// 下面三句照抄就行
writer = new BufferedWriter(new OutputStreamWriter(
socket.getOutputStream()));
InputStream inputStream = socket.getInputStream();
DataInputStream input = new DataInputStream(inputStream);
// 创建一个字节数组用来接收服务端发来的字节流,多大自己说了算
byte[] b = new byte[100000];
// 写一个死循环,不停的接收服务端发来的数据
while (true) {
// 将数据读入字节数组,返回长度
int length = input.read(b);
// 如果服务端没发数据就return不在往下执行,继续读数据
if (length <= 0) return;
// 如果服务端发的数据不为空,则把字节数组转成字符串
msg = new String(b, 0, length, “gb2312”);
// 后边就可以调用数据解析的方法
…
}
一般的通讯格式都是Json的,查一下把json格式的字符串转换成json对象然后根据key值获取value的代码:
// 其中,data是json格式的字符串,转换成了jsonObject对象
JSONObject jsonObject = new JSONObject(data);
// 获取jsonObject对象的device_id