帮我写一个java程序。模拟网站下载图片的功能,先让客户端给服务器发请求,告诉服务器要下载的文件名,然后服务器就给客户端传递文件,直至传递完成;
时间: 2023-05-17 11:04:57 浏览: 77
好的,以下是一个简单的 Java 程序,可以模拟网站下载图片的功能:
```java
import java.io.*;
import java.net.*;
public class ImageDownloader {
public static void main(String[] args) {
try {
// 创建一个 Socket 连接到服务器
Socket socket = new Socket("localhost", 8080);
// 获取输入输出流
InputStream in = socket.getInputStream();
OutputStream out = socket.getOutputStream();
// 发送请求
String fileName = "image.jpg";
out.write(fileName.getBytes());
// 接收文件
byte[] buffer = new byte[1024];
int len;
FileOutputStream fileOut = new FileOutputStream(fileName);
while ((len = in.read(buffer)) != -1) {
fileOut.write(buffer, 0, len);
}
fileOut.close();
// 关闭连接
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
这个程序会连接到本地的 8080 端口,并发送一个文件名为 "image.jpg" 的请求。服务器会将该文件传输给客户端,客户端会将文件保存到本地。如果需要下载其它文件,只需要修改 fileName 的值即可。
阅读全文