8个版本 (4个稳定版)
使用旧Rust 2015
1.1.1 | 2021年7月10日 |
---|---|
1.1.0 | 2019年1月2日 |
1.0.1 | 2018年12月31日 |
1.0.0 | 2017年4月20日 |
0.1.0 | 2016年7月31日 |
#82 in 编码
252,510 每月下载量
在 156 个crate中(44个直接使用)
14KB
386 行
serde-transcode
从一种Serde格式转换到另一种格式。
许可证
许可协议为以下之一
- Apache License,版本2.0,(LICENSE-APACHE 或 http://www.apache.org/licenses/LICENSE-2.0)
- MIT许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
由您选择。
贡献
除非您明确声明,否则任何有意提交并包含在作品中的贡献,根据Apache-2.0许可证定义,将双重许可如上所述,不附加任何额外条款或条件。
lib.rs
:
从一种Serde格式转换到另一种格式。
此crate提供从任意Serde Deserializer
到任意Serde Serializer
的“转换”功能,而无需将整个输入收集到内存中的中间形式。例如,您可以将JSON数据流转换为CBOR数据流,或将JSON转换为其格式化的形式。
示例
将JSON文件转换为格式化版本。
extern crate serde;
extern crate serde_json;
extern crate serde_transcode;
use serde::Serialize;
use serde_json::{Serializer, Deserializer};
use std::io::{Read, Write, BufReader, BufWriter};
use std::fs::File;
fn main() {
let reader = BufReader::new(File::open("input.json").unwrap());
let writer = BufWriter::new(File::create("output.json").unwrap());
let mut deserializer = Deserializer::from_reader(reader);
let mut serializer = Serializer::pretty(writer);
serde_transcode::transcode(&mut deserializer, &mut serializer).unwrap();
serializer.into_inner().flush().unwrap();
}
依赖关系
~110–345KB