📄 datagramsserverfile.java
字号:
package datagrams;
import java.io.*;
import java.net.*;
public class DatagramsServerFile {
public static void main(String[] args) throws IOException {
//应用5557端口创建DatagramSocket类
DatagramSocket datagramSocket = new DatagramSocket(5557);
//创建流读入类
FileInputStream fileInputStream = new FileInputStream("demo.jpg");
try {
byte[] buf = new byte[1];
//使用byte数组创建数据包
DatagramPacket packet = new DatagramPacket(buf, buf.length);
System.out.println("等待接收数据.");
//使用DatagramSocket接口接收客户端的数据包,进入等待状态
datagramSocket.receive(packet);
//根据接收的数据包获取网络地址与端口
InetAddress address = packet.getAddress();
int port = packet.getPort();
while (fileInputStream.available() > 0) {
//读入文件数据
fileInputStream.read(buf);
//重新创建带有网络地址与端口的数据包
packet = new DatagramPacket(buf, buf.length, address, port);
//根据数据包的地址与端口发送数据包
datagramSocket.send(packet);
}
String str = "";
buf = str.getBytes();
packet = new DatagramPacket(buf, buf.length, address, port);
datagramSocket.send(packet);
fileInputStream.close();
System.out.println("完成数据发送.");
}
catch (IOException e) {
e.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -