如何解决如何从 Vec<u8> 写入文件?
我有一个 base64 图像并从中获取 Vec<u8>
并将它们写入文件。
这是我的代码:
let file_contents_base64: Vec<u8> = image_base64::from_base64(
String::from(&file_contents_string_vec[0])
);
我想将 file_contents_base64
变量写入文件。
解决方法
您使用 image-base64
crate 的事实似乎与该问题无关。考虑到您只想将 Vec<u8>
写入文件,那么您可以使用例如fs::write()
:
use std::fs;
use std::path::Path;
let file_contents_base64: Vec<u8> = ...;
let path: &Path = ...;
fs::write(path,file_contents_base64).unwrap();
,
除了 fs::write
之外,通过使用 Write
,还有一个适用于所有实现 write_all
trait 的通用解决方案:
use std::io::Write; // bring trait into scope
use std::fs;
// ... later in code
let file = OpenOptions::new()
.write(true)
// either use ? or unwrap since it returns a Result
.open("/path/to/file")?;
file.write_all(&file_contents_base64);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。