udpclient.java
来自「UDP一对一通信」· Java 代码 · 共 50 行
JAVA
50 行
import java.io.*;
import java.net.*;
public class udpclient
{
public static void main(String[] args) throws IOException
{
DatagramSocket clientsoc=null;//客户的socket
DatagramPacket clientpac=null;//客户发出去的数据包
DatagramPacket clientrecpac=null;//客户从服务器上接收的数据包
String strToSend=null;//要发给服务器的数据
String data=null;//接收的字节流
byte[] buf=null;//发送的字节流
byte[] buf1=null;//发送的最后一个字节流
byte[] bufrec=null;//接收的字节流
DataInputStream sysin=null;//客户的输入流
try
{
bufrec=new byte[256];
clientsoc=new DatagramSocket();
sysin=new DataInputStream(System.in);
strToSend=sysin.readLine();
while(strToSend!="quit")
{
buf=new byte[strToSend.length()];
strToSend.getBytes(0,buf.length,buf,0);
clientpac=new DatagramPacket(buf,buf.length,InetAddress.getByName("localhost"),9000);
clientsoc.send(clientpac);
clientrecpac=new DatagramPacket(bufrec,bufrec.length);
clientsoc.receive(clientrecpac);
data=new String(bufrec,0,0,bufrec.length);
System.out.println("Server said:"+data);
strToSend=sysin.readLine();
}
buf1=new byte[strToSend.length()];
strToSend.getBytes(0,buf1.length,buf1,0);
clientpac=new DatagramPacket(buf1,buf1.length,InetAddress.getByName("localhost"),9000);
clientsoc.send(clientpac);
}
catch(Exception e)
{
System.out.println("Error:"+e);
}
finally
{
clientsoc.close();
System.exit(0);
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?