客户端:
package test;
import java.io.*;
import java.net.*;
import java.awt.*;
import java.awt.event.*;
public class WC7 extends Frame implements ActionListener,Runnable
{
DatagramSocket D;
byte dataBuf[] = new byte[512];
InetAddress A;
DatagramPacket Pac = new DatagramPacket(dataBuf,dataBuf.length);
TextArea T1 = new TextArea();
TextField T2 = new TextField(23);
public WC7()
{
add(T1,"Center");
Panel P = new Panel();
P.add(new Label ("发送的信息"));
P.add(T2);
T2.addActionListener(this);
add(P,"South");
setSize(350,200);
setVisible(true);
setTitle("WC7");
addWindowListener (new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
(new Thread (this)).start();
}
public void actionPerformed(ActionEvent e1){
try {
String str = T2.getText();
byte[] buf = str.getBytes();
DatagramSocket D = new DatagramSocket();
InetAddress A = InetAddress.getByName("<span style="color:#FF0000;">服务器端地址</span>");
DatagramPacket P1 = new DatagramPacket (buf,buf.length,A,8002);
D.send(P1);
T2.setText("");
T1.append("我说: "+str+"\n");
}
catch(Exception e2){
}
}
public void run()
{
try {
DatagramSocket D = new DatagramSocket(8001);
while(true)
{
D.receive(Pac);
String str = new String(Pac.getData(),0,Pac.getLength(),"<span style="color:#FF0000;">编码格式</span>");
T1.append(Pac.getAddress()+" WC7说 "+str+"\n");
}
}
catch(Exception e3){
}
}
public static void main(String args[]){
new WC7();
}
}
服务端:
package test;
import java.io.*;
import java.net.*;
import java.awt.*;
import java.awt.event.*;
public class WS7 extends Frame implements ActionListener,Runnable
{
DatagramSocket D;
byte dataBuf[] = new byte[512];
InetAddress A;
DatagramPacket Pac = new DatagramPacket(dataBuf,dataBuf.length);
TextArea T1 = new TextArea();
TextField T2 = new TextField(23);
public WS7()
{
add(T1,"Center");
Panel P = new Panel();
P.add(new Label ("message"));
P.add(T2);
T2.addActionListener(this);
add(P,"South");
setSize(350,200);
setVisible(true);
setTitle("WS7");
addWindowListener (new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
(new Thread (this)).start();
}
public void actionPerformed(ActionEvent e1){
try {
String str = T2.getText();
byte[] buf = str.getBytes();
DatagramSocket D = new DatagramSocket();
InetAddress A = InetAddress.getByName("<span style="color:#FF0000;">客户端地址</span>");
DatagramPacket P1 = new DatagramPacket (buf,buf.length,A,8001);
D.send(P1);
T2.setText("");
T1.append("我说: "+str+"\n");
}
catch(Exception e2){
}
}
public void run()
{
try {
DatagramSocket D = new DatagramSocket(8002);
while(true)
{
D.receive(Pac);
String str = new String(Pac.getData(),0,Pac.getLength(),"<span style="color:#FF0000;">编码格式</span>");
// str = new String(str.getBytes("gbk"), "iso8859-1");
T1.append(Pac.getAddress()+" WS7说 "+str+"\n");
}
}
catch(Exception e3){
}
}
public static void main(String args[]){
new WS7();
}
}