我正在开发Android客户端和Java Server应用程序。我发送并收到了一个字符串,但我需要一次发送两个整数值。我应该使用整数数组只有两个整数吗?值将是这样的:int value_1 = 5; int value_2 = -10;我正在发送像这样的字符串;
Android客户端:
command = "hello";
dp = new DatagramPacket(command.getBytes(),command.length(), serverAddr, this.port);
ds.send(dp);
... PC上的Java服务器
message= new byte[1024];
dp = new DatagramPacket(message, message.length);
ds = new DatagramSocket(port);
ds.receive(dp);
receive= new String(message, 0, dp.getLength());
我搜索过这个,我没有得到任何东西。如何一次发送两个整数值,我该如何阅读呢?
答案 0 :(得分:0)
我建议将整数数据序列化为json字符串,将其作为字符串发送,然后将其转换回服务器端。
以下是一个例子:
// client side code
int[] clientArray = { 5, -10 };
String command = new Gson().toJson(clientArray);
dp = new DatagramPacket(command.getBytes(), command.length(), serverAddr, this.port);
ds.send(dp);
// server side code
message = new byte[1024];
dp = new DatagramPacket(message, message.length);
ds = new DatagramSocket(port);
ds.receive(dp);
receive = new String(message, 0, dp.getLength());
int[] serverArray = new Gson().fromJson(command, int[].class);