baar
2015-02-25 23:00
采纳率: 0%
浏览 2.0k

请教一个DatagramPacket问题

请问在发送DatagramPacket的时候是不是只能发送String类?
通常发送一个DatagramPacket的格式如下

String msg = "你好!";
byte[] buf = msg.getBytes();
DatagramPacket packet = new DatagramPacket(buf, buf.length, InetAddress.getByName("127.0.0.1"), 10000);// 2、创建用于发送的DatagramPacket(主要设置发送的数据、远程地址和端口等信息)
sender.send(packet);// 3、通过DatagramSocket发送DatagramPacket 

但是我想尝试发送一个整数,但是发现整数不支持getBytes(),请问如果想要DatagramPacket发送一个整数怎么办?谢谢

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • threenewbee 2015-02-26 03:22

    int i = xxxx;
    byte[] a = new byte[4];
    a[0] = (byte) (0xff & i);
    a[1] = (byte) ((0xff00 & i) >> 8);
    a[2] = (byte) ((0xff0000 & i) >> 16);
    a[3] = (byte) ((0xff000000 & i) >> 24);

    评论
    解决 无用
    打赏 举报
  • 五行缺钱丶 2019-11-11 10:37

    就发送数字字符串呗,接受后再用Integer.valueof(String)转换吧

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题