java 通过网络地址下载文件
时间: 2023-10-30 14:07:30 浏览: 89
要通过Java从网络地址下载文件,可以使用Java标准库中的java.net包中的URLConnection和InputStream类。
以下是一个简单的示例,演示如何从URL下载文件并将其保存到本地文件系统中:
```java
import java.io.FileOutputStream;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;
public class FileDownloader {
public static void main(String[] args) throws Exception {
String fileUrl = "https://example.com/file-to-download.txt";
String localFilePath = "/path/to/local/file.txt";
URL url = new URL(fileUrl);
URLConnection connection = url.openConnection();
InputStream inputStream = connection.getInputStream();
FileOutputStream outputStream = new FileOutputStream(localFilePath);
byte[] buffer = new byte[1024];
int bytesRead = -1;
while ((bytesRead = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, bytesRead);
}
outputStream.close();
inputStream.close();
System.out.println("File downloaded to " + localFilePath);
}
}
```
在上面的代码中,我们首先定义要下载的文件的URL和本地文件系统中的路径。然后,我们使用URL对象创建一个URLConnection对象,并使用该对象的getInputStream()方法获取到文件的输入流。
我们还创建了一个FileOutputStream对象,该对象用于将文件写入本地文件系统中。我们使用一个缓冲区读取输入流,并使用FileOutputStream将读取的字节写入本地文件系统中。最后,我们关闭文件输出流和输入流,并打印一条消息,指示文件已成功下载到本地文件系统中。
请注意,上面的示例假定下载的文件是文本文件。如果您要下载的文件是二进制文件(例如图像或视频文件),则需要使用更适合二进制数据的缓冲区大小。
阅读全文