java离线文件传输怎么实现
活动:慈云数据爆款香港服务器,CTG+CN2高速带宽、快速稳定、平均延迟10+ms 速度快,免备案,每月仅需19元!!= -1) {out.write;}out.close();in.close();System.out.println;socket.close();serverSocket.close();} catch {e.printStackTrace();}}}```客户端代码:```javaimport java.io.*;import java.net.*;public class Client {public static void main {try {Socket socket = new Socket;// 发送文件File file = new File;FileInputStream in = new FileInputStream;OutputStream out = socket.getOutputStream();byte[] buffer = new byte[1024];int len;while ((len = in.read(buffer)) !客户端将文件读取为字节流,通过`Socket`的输出流发送给服务端,服务端接收数据并写入文件。
活动:慈云数据爆款香港服务器,CTG+CN2高速带宽、快速稳定、平均延迟10+ms 速度快,免备案,每月仅需19元!! 点击查看 要实现Java的离线文件传输,可以使用Socket编程来实现。下面是一个简单的离线文件传输的示例代码:
服务端代码:
```java
import java.io.*;
import java.net.*;
public class Server {
public static void main(String[] args) {
try {
ServerSocket serverSocket = new ServerSocket(8888);
System.out.println("等待客户端连接...");
Socket socket = serverSocket.accept();
System.out.println("客户端已连接");
// 接收文件
InputStream in = socket.getInputStream();
FileOutputStream out = new FileOutputStream("file.txt");
byte[] buffer = new byte[1024];
int len;
while ((len = in.read(buffer)) != -1) {
out.write(buffer, 0, len);
}
out.close();
in.close();
System.out.println("文件接收完成");
socket.close();
serverSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
客户端代码:
```java
import java.io.*;
import java.net.*;
public class Client {
public static void main(String[] args) {
try {
Socket socket = new Socket("localhost", 8888);
// 发送文件
File file = new File("file.txt");
FileInputStream in = new FileInputStream(file);
OutputStream out = socket.getOutputStream();
byte[] buffer = new byte[1024];
int len;
while ((len = in.read(buffer)) != -1) {
out.write(buffer, 0, len);
}
out.close();
in.close();
System.out.println("文件发送完成");
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
以上代码中,服务端通过`ServerSocket`监听指定的端口,客户端通过`Socket`连接到服务端。客户端将文件读取为字节流,通过`Socket`的输出流发送给服务端,服务端接收数据并写入文件。