2个版本
0.0.2 | 2020年10月28日 |
---|---|
0.0.1 | 2020年5月20日 |
#60 in #I/O写入
用于 ninres-cli
21KB
416 行
Ninres-rs
读取常用的任天堂文件格式。
请参阅Wiki:https://github.com/Kinnay/Nintendo-File-Formats/wiki
所有文件格式都位于功能标志之后。以下是可用的任天堂文件格式功能列表
bfres
, sarc
您还可以启用其他功能
tar_ninres
: 将任天堂资源写入tar文件。
zstd
: ZSTD 解压缩。
此crate的所有功能都可以编译为WebAssembly。
示例
在Cargo.toml
中启用所需的功能。
[dependencies]
ninres = { version = "*", features = ["bfres", "sarc", "zstd"] }
在您的main.rs
中。
use std::fs::read;
use ninres::{NinRes, NinResFile};
let buffer = read("foo.pack")?;
let ninres = buffer.as_ninres()?;
match &ninres {
NinResFile::Bfres(_bfres) => {}
NinResFile::Sarc(_sarc) => {}
}
写入tar
将资源转换为tar缓冲区。此缓冲区可以存储在文件中,例如。
mode
参数指的是tar文件中的文件模式。
示例
use ninres::{sarc::Sarc, IntoTar};
use std::{fs::{read, File}, io::Write};
let sarc_file = Sarc::new(&read("./assets/M1_Model.pack")?)?;
let tar = sarc_file.into_tar(0o644)?;
let mut file = File::create("M1_Model.tar")?;
file.write_all(&tar.into_inner()[..])?;
依赖关系
~0.3–9MB
~93K SLoC