rust写一个文件下载功能
时间: 2023-08-03 11:03:45 浏览: 104
您好!以下是使用 Rust 编写一个简单的文件下载功能的示例代码:
```rust
use std::fs::File;
use std::io::{self, Read};
use reqwest;
fn download_file(url: &str, output_path: &str) -> Result<(), Box<dyn std::error::Error>> {
let mut response = reqwest::blocking::get(url)?;
let mut buffer = Vec::new();
response.read_to_end(&mut buffer)?;
let mut file = File::create(output_path)?;
file.write_all(&buffer)?;
println!("File downloaded successfully!");
Ok(())
}
fn main() {
let url = "https://www.example.com/file.txt";
let output_path = "path/to/save/file.txt";
if let Err(err) = download_file(url, output_path) {
eprintln!("Error downloading file: {}", err);
}
}
```
在上面的示例中,我们使用了 `reqwest` 库来进行文件下载。首先,我们发送一个 GET 请求到指定的 URL,并将响应保存到内存缓冲区中。然后,我们创建一个文件并将缓冲区中的内容写入到文件中。
请注意,这只是一个简单的示例代码,可能需要根据您的实际需求进行修改和扩展。例如,您可能需要处理网络请求的错误,设置适当的超时时间,处理文件路径的验证等等。
希望能对您有所帮助!如果您有任何其他问题,请随时提问。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)