Archived

This topic is now archived and is closed to further replies.

[java] Problem with receiving packet with datagram packet

This topic is 5118 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Problem with setting up a packet and filling the packet with information coming out of the socket. Everything seems to be working correctly except that it keeps trying to fill up the whole 256 bytes limit instead of just processing little pieces of information send through less than 256 bytes. I''m not sure what I did wrong, did I setup the packet incorrectly or something I need to set with the socket?
class Listener extends Thread implements Runnable {
  DatagramSocket socket;
  Thread listRunner;

  Listener() {
    try {
      socket.setReceiveBufferSize(512);
    } catch (SocketException ex) {}

    inbuffer = new byte[256];
    inpacket = new DatagramPacket(inbuffer, inbuffer.length, addr, port);
    inpacket.setAddress(addr);
  }

  private void run() {
    try {
      socket.receive(inpacket);
      String received = new String(inpacket.getData());
      System.out.println(received);
    } catch (IOException ex) {
      ex.printStackTrace();
      System.out.println("Error: IOException");
    }
    System.out.println(inbuffer.length);
    inbuffer = inpacket.getData();
  }
}

Share this post


Link to post
Share on other sites