使用java语言编写可用于实际网络环境的文件传送器;可指定传输的本地文件;文件传送器的两个传送端可工作于不同的主机上或同一主机的不同程序;
以下是一个简单的基于Java语言编写的文件传送器示例:
Sender.java
import java.io.*;
import java.net.*;
public class Sender {
public static void main(String[] args) throws IOException {
Socket socket = new Socket("localhost", 8000);
File file = new File("local_file.txt");
FileInputStream fileInputStream = new FileInputStream(file);
OutputStream outputStream = socket.getOutputStream();
byte[] buffer = new byte[4096];
int bytesRead = 0;
while ((bytesRead = fileInputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, bytesRead);
}
fileInputStream.close();
outputStream.close();
socket.close();
System.out.println("File sent successfully.");
}
}
Receiver.java
import java.io.*;
import java.net.*;
public class Receiver {
public static void main(String[] args) throws IOException {
ServerSocket serverSocket = new ServerSocket(8000);
Socket socket = serverSocket.accept();
InputStream inputStream = socket.getInputStream();
FileOutputStream fileOutputStream = new FileOutputStream("received_file.txt");
byte[] buffer = new byte[4096];
int bytesRead = 0;
while ((bytesRead = inputStream.read(buffer)) != -1) {
fileOutputStream.write(buffer, 0, bytesRead);
}
inputStream.close();
fileOutputStream.close();
socket.close();
serverSocket.close();
System.out.println("File received successfully.");
}
}
这个示例中,Sender程序用于发送本地的local_file.txt文件,Receiver程序用于接收并保存传输过来的文件。Sender程序在运行时需要指定接收端的IP地址和端口号,而Receiver程序则监听指定的端口号并等待连接。这两个程序可以在不同的主机上运行,也可以在同一主机的不同程序中运行
原文地址: https://www.cveoy.top/t/topic/fljG 著作权归作者所有。请勿转载和采集!