#archive #mongo-db #bson #parser

mongo_archive

MongoDB归档的解析器

1 个不稳定版本

0.1.0 2024年5月31日

#2215数据库接口

LGPL-3.0

5KB
53

mongo_archive

MongoDB归档的解析器。

示例

use std::{
    fs::OpenOptions,
    io::{BufWriter, Cursor},
};

use mongo_archive::MongoArchive;

fn main() -> anyhow::Result<()> {
    // read and parse as bson::Bson
    let docs = MongoArchive::from_reader(Cursor::new(include_bytes!("./createshiprecords"))).parse();
    let json_value: serde_json::Value = bson::from_bson(docs)?;
    let out = OpenOptions::new()
        .create(true)
        .truncate(true)
        .write(true)
        .read(false)
        .open("createshiprecords.json")?;
    let buf_writer = BufWriter::new(out);
    serde_json::to_writer(buf_writer, &json_value)?;
    Ok(())
}

依赖项

~7MB
~132K SLoC