packet = new DatagramPacket(b,100);
Socket.receive(packet);
b= packet.getData();
System.out.println(b[0]);
System.out.println(b[1]);
System.out.println(b[2]);
System.out.println(b[3]);
System.out.println(b[4]);
System.out.println(b[5]);
System.out.println(b[6]);
System.out.println(b[7]);
System.out.println(b[8]);我接受部分的处理暂时如上所示范程序打印出来的8个字节的数据: -16 6 2 23 14 0 3 -32
我用网络调试软件时返回数据是:F0 06 02 17 0E 00 03 E0请教该如何处理,才能和网络调试助手一样返回正确的值呢???
Socket.receive(packet);
b= packet.getData();
System.out.println(b[0]);
System.out.println(b[1]);
System.out.println(b[2]);
System.out.println(b[3]);
System.out.println(b[4]);
System.out.println(b[5]);
System.out.println(b[6]);
System.out.println(b[7]);
System.out.println(b[8]);我接受部分的处理暂时如上所示范程序打印出来的8个字节的数据: -16 6 2 23 14 0 3 -32
我用网络调试软件时返回数据是:F0 06 02 17 0E 00 03 E0请教该如何处理,才能和网络调试助手一样返回正确的值呢???
StringBuffer sb = new StringBuffer();
for(byte b : bytes) {
sb.append(String.format("%02X ", b));
}
String str = sb.toString().trim();
System.out.println(str);
//接受返回数据部分
packet = new DatagramPacket(RecData,1024);
Socket.receive(packet);
RecData= packet.getData();
System.out.println("Receive" + packet.getAddress());
for(int i=0;i<8;i++)
{
String hex=Integer.toHexString(RecData[i] & 0xFF);
//返回的数据转换为16进制数,取低8位
if (hex.length()==1)
{
hex="0"+hex;
//返回的数据若高位位为“0”,则补“0”
}
System.out.print(hex.toUpperCase() +" ");
//返回的数据转换为大写,并输出
}
System.out.println("");