注意先启动服务端,再启动客户端
TCP客户端
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.Socket;
public class TCPClient {
public static void main(String[] args) throws Exception{
Socket s=new Socket("127.0.0.1",6666);
OutputStream os=s.getOutputStream();
DataOutputStream dos=new DataOutputStream(os);
dos.writeUTF("welcome to server!");
while(true){
dos.writeUTF(new BufferedReader(new InputStreamReader(System.in)).readLine());
dos.flush();
}
}
}
TCP服务端
import java.net.Socket;
import java.io.DataInputStream;
import java.net.ServerSocket;
public class TCPSever {
public static void main(String[] args) throws Exception {
@SuppressWarnings("resource")
ServerSocket serverSocket=new ServerSocket(6666);
while(true)
{
Socket accept= serverSocket.accept();
DataInputStream dataInputStream= new DataInputStream(accept.getInputStream());
System.out.println(dataInputStream.readUTF().toString());
accept.close();
dataInputStream.close();
}
}
}
UDP客户端
import java.net.*;
import java.io.*;
public class UdpClient{
public static void main(String[] args)throws Exception{
long n=1000L;
ByteArrayOutputStream baos= new ByteArrayOutputStream();
DataOutputStream dos=new DataOutputStream(baos);
dos.writeLong(n);
byte[] buf=baos.toByteArray();
DatagramPacket dp=new DatagramPacket(buf,buf.length,new InetSocketAddress("127.0.0.1",5678));
DatagramSocket ds=new DatagramSocket(9999);
ds.send(dp);
ds.close();
}
}
UDP服务端
import java.net.*;
import java.io.*;
public class UdpServer{
public static void main(String[] args)throws Exception{
byte[] buf=new byte[1024];
DatagramPacket dp=new DatagramPacket(buf,buf.length);
DatagramSocket ds=new DatagramSocket(5678);
while(true){
ds.receive(dp);
ByteArrayInputStream bai=new ByteArrayInputStream(buf);
DataInputStream dis=new DataInputStream(bai);
System.out.println(dis.readLong());
}
}
}