#json-file #object #github #write #com-maxogden-toiletdb #flushes

toiletdb

将对象写入 JSON 文件。toiletdb 的 Rust 实现 https://github.com/maxogden/toiletdb

3 个版本

0.1.2 2020年4月12日
0.1.1 2020年4月12日
0.1.0 2020年4月11日

#110 in #json-file

Download history 1/week @ 2024-05-26 1/week @ 2024-06-02 21/week @ 2024-06-30 49/week @ 2024-07-28

每月 69 次下载

MIT 许可证

7KB
68

toiletdb 🚽🦀

将对象写入 JSON 文件。toiletdb 的 Rust 实现 https://github.com/maxogden/toiletdb

基于 JSON 文件的 Rust 键值存储。

用法

use toiletdb::Toiletdb;

  // pass the name of the json file to use
fn example() -> Result<(), std::io::Error> {
  let mut db = Toiletdb::new("data.json")?;

  // write some key/value pairs to data.json
  db.write("test", 123)?;
  db.write("name", "toiletdb")?;
  db.write("rust", true)?;

  // get the entire data.json contents
  let data: String = db.read()?;

  // read a value from a key
  if let Some(v) = db.read_key("test") {
     assert_eq!(v, 123);
  }

  // delete a key/value pair
  db.delete("test")?;

  // reset state and delete data.json
  db.flush()?;
  Ok(())
}

API

db.write(key, value)

key 设置为 val,存储在 JSON 文件中

db.read()

将整个 JSON 文件读取为 String

db.read_key(key)

获取键的值

db.delete(key)

从 JSON 文件中删除 key 和其值

db.flush()

重置状态并删除 JSON 文件

安装

使用 cargo-edit

cargo add toiletdb

或手动将 toiletdb 添加到 Cargo.toml

toiletdb = "0.1.0"

另请参阅

许可证

MIT

依赖

~2–11MB
~123K SLoC