40个版本
0.18.0 | 2023年10月6日 |
---|---|
0.17.1 | 2022年12月22日 |
0.16.0 | 2022年12月17日 |
0.10.4 | 2022年11月10日 |
0.3.1 | 2020年3月26日 |
#1384 in 编码
用于 espa
450KB
11K SLoC
esl
用于读取、写入和处理ESM/ESP/ESS文件的库。
use esl::{CodePage, RecordSerde};
use esl::read::{RecordReadMode, Records};
use serde_serialize_seed::{ValueWithSeed, VecSerde};
use std::fs::File;
use std::io::{BufReader, BufWriter};
fn main() {
if let Ok(input) = File::open("Morrowind.esm") {
let mut input = BufReader::new(input);
let records = Records::new(CodePage::Russian, RecordReadMode::Strict, 0, &mut input);
let records = records.map(|x| {
match x {
Ok(mut x) => {
x.fit();
x
},
Err(e) => panic!("{}", e)
}
}).collect::<Vec<_>>();
let output = File::create("Morrowind.esm.yaml").unwrap();
serde_yaml::to_writer(
BufWriter::new(output),
&ValueWithSeed(&records[..], VecSerde(RecordSerde { code_page: None }))
).unwrap();
}
}
依赖关系
~7MB
~128K SLoC