1 个不稳定版本
0.1.0 | 2022 年 7 月 15 日 |
---|
#1511 在 文件系统
51 每月下载量
8KB
108 行代码(不含注释)
磁盘持久化
一个库,使您的应用程序在执行之间保持数据变得非常容易。它可以(非常快速地)读取和写入实现了 serde 的 Serialize
和 Deserialize
的任何数据结构,并将信息自动保存到用户的缓存文件夹或您指定的任何其他路径。
默认位置
平台 | 值 | 示例 |
---|---|---|
Linux | $XDG_CACHE_HOME 或 $HOME /.cache |
/home/user/.cache |
macOS | $HOME /Library/Caches |
/Users/User/Library/Caches |
Windows | {FOLDERID_LocalAppData} |
C:\Users\User\AppData\Local |
基础知识
创建我们的数据
use serde::{Deserialize, Serialize};
...
#[derive(Serialize, Deserialize, Debug)]
struct Data {
name: String,
age: u8,
}
将其写入磁盘
let persist: DiskPersist<Data> = DiskPersist::init("disk-persist-example").unwrap();
let data = Data {
name: "John Doe".to_string(),
age: 45,
};
persist.write(&data).unwrap();
然后在任何时间读取它
let persist: DiskPersist<Data> = DiskPersist::init("disk-persist-example").unwrap();
println!("{:#?}", persist.read().unwrap());
输出
Some(
Data {
name: "John Doe",
age: 45,
},
)
依赖关系
~0.7–1.6MB
~32K SLoC