www.pudn.com > 20051122095286.zip > DatagramSender.java


package ora.ch6; 
 
import java.io.IOException; 
import javax.microedition.io.Connector; 
import javax.microedition.io.Datagram; 
import javax.microedition.io.DatagramConnection; 
 
public class DatagramSender { 
    public static void main(String[] args) { 
        if (args.length != 2) { 
            System.out.println("Usage: DatagramSender port length"); 
            System.exit(1); 
        } 
         
        try { 
            DatagramConnection sender =  
                    (DatagramConnection)Connector.open("datagram://localhost:" + args[0]); 
            int length = Integer.parseInt(args[1]); 
            byte[] buffer = new byte[length]; 
            for (int i = 0; i < length; i++) { 
                buffer[i] = (byte)('0' + (i % 10)); 
            } 
            Datagram dgram = sender.newDatagram(buffer, buffer.length); 
            sender.send(dgram); 
             
            // Wait for the packet to be returned 
            for (int i = 0; i < length; i++) { 
                buffer[i] = (byte)0; 
            } 
            sender.receive(dgram); 
            length = dgram.getLength(); 
            System.out.println("Received return packet, length is " + length); 
             
            // Show the content of the datagram. 
            for (int i = 0; i < length; i++) { 
                System.out.print(buffer[i] + " "); 
            } 
            System.out.println(); 
        } catch (IOException ex) { 
            System.out.println("IOException: " + ex); 
        } 
    } 
}