OutputStreams实现批量下载
时间: 2023-10-23 15:14:31 浏览: 41
要实现批量下载,你可以使用 OutputStream 来将下载的文件写入到本地磁盘。以下是一个简单的示例代码:
```java
import java.io.FileOutputStream;
import java.io.InputStream;
import java.net.URL;
import java.nio.file.Files;
import java.nio.file.Paths;
public class BatchDownloader {
public static void main(String[] args) {
String[] urls = {
"https://example.com/file1.txt",
"https://example.com/file2.txt",
"https://example.com/file3.txt"
};
String[] filenames = {
"file1.txt",
"file2.txt",
"file3.txt"
};
for (int i = 0; i < urls.length; i++) {
try {
URL url = new URL(urls[i]);
InputStream inputStream = url.openStream();
FileOutputStream outputStream = new FileOutputStream(filenames[i]);
byte[] buffer = new byte[4096];
int bytesRead;
while ((bytesRead = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, bytesRead);
}
outputStream.close();
inputStream.close();
System.out.println(filenames[i] + " downloaded successfully.");
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
```
在这个示例中,我们使用一个包含文件URL的字符串数组和一个包含文件名的字符串数组来表示要下载的文件。然后,我们循环遍历这些URL,逐个下载文件并将其保存到本地磁盘中。下载过程使用 InputStream 从URL读取数据,并使用 FileOutputStream 将数据写入本地文件中。
请注意,在实际的应用中,你可能需要处理更多的异常情况、添加错误处理和日志记录等功能。此示例仅提供了一个基本的框架来帮助你理解如何使用 OutputStream 实现批量下载。