📄 myserverdatagramsocket.java
字号:
import java.net.*;
import java.io.*;
/**
* A subclass of DatagramSocket which contains
* methods for sending and receiving messages
* @author M. L. Liu
*/
public class MyServerDatagramSocket extends DatagramSocket {
static final int MAX_LEN = 100;
MyServerDatagramSocket(int portNo) throws SocketException{
super(portNo);
}
public void sendMessage(InetAddress receiverHost,
int receiverPort,
String message)
throws IOException {
byte[ ] sendBuffer = message.getBytes( );
DatagramPacket datagram =
new DatagramPacket(sendBuffer, sendBuffer.length,
receiverHost, receiverPort);
this.send(datagram);
} // end sendMessage
public String receiveMessage( )
throws IOException {
byte[ ] receiveBuffer = new byte[MAX_LEN];
DatagramPacket datagram =
new DatagramPacket(receiveBuffer, MAX_LEN);
this.receive(datagram);
String message = new String(receiveBuffer);
return message;
} //end receiveMessage
public DatagramMessage receiveMessageAndSender( )
throws IOException {
byte[ ] receiveBuffer = new byte[MAX_LEN];
DatagramPacket datagram =
new DatagramPacket(receiveBuffer, MAX_LEN);
this.receive(datagram);
// create a DatagramMessage object, to contain message
// received and sender's address
DatagramMessage returnVal = new DatagramMessage( );
returnVal.putVal(new String(receiveBuffer),
datagram.getAddress( ),
datagram.getPort( ));
return returnVal;
} //end receiveMessage
} //end class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -