serialize some data to a file or deserialize a data from a file support encrypt/decrypt file
将struct序列化化存储为文件,或者从文件反序列化为struct 文件存储时支持加密存储
```ignore use serde::{Deserialize, Serialize}; use aesgcm::aead::{Aead, NewAead}; use aesgcm::{Aes256Gcm, Key, Nonce};
use serde2file::prelude::*;
struct TestData { id: String, name: String, } /// a encryption and decryption tools /// /// 加密和解密工具
struct TestEncryptTool;
/// some
impl TestEncryptTool {
pub fn getaeskeynonce() -> (String, String) {
(
"*)#@140600!$=^20220208)leb*$xz".into(),
"abc$hy%95599".into(),
)
}
pub fn encrypt(data: &str) -> DumpResult
mod test { use super::*;
#[test]
fn test_serialize_file() {
let data = TestData {
id: "01".into(),
name: "hy".into(),
};
data.dump_to_file("/tmp").unwrap();
}
#[test]
fn test_deserialize_file() {
let data = TestData {
id: "01".into(),
name: "hy".into(),
};
println!("{}", std::any::type_name::<TestData>());
let s_data = TestData::load_from_file("/tmp").unwrap();
assert_eq!(data, s_data)
}
} ```