2

我有一个 base64 图像并从中Vec<u8>获取并将它们写入文件。这是我的代码:

let file_contents_base64: Vec<u8> = image_base64::from_base64(
    String::from(&file_contents_string_vec[0])
);

我想将file_contents_base64变量写入文件。

4

2 回答 2

2

除了 之外fs::write,还有一个通用的解决方案,用于实现该Write特征的所有内容,方法是使用write_all

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);
于 2021-01-13T13:41:24.733 回答
1

您使用image-base64板条箱的事实似乎与问题不太相关。考虑到您只想将 a 写入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();
于 2021-01-13T13:36:44.840 回答