MinedMap/src/bin/nbtdump.rs

31 lines
612 B
Rust
Raw Normal View History

2023-01-24 20:39:54 +01:00
use std::{fs::File, io::prelude::*, path::PathBuf};
use anyhow::{Context, Result};
use clap::Parser;
use flate2::read::GzDecoder;
#[derive(Debug, Parser)]
struct Args {
/// Filename to dump
file: PathBuf,
}
fn main() -> Result<()> {
let args = Args::parse();
let file = File::open(&args.file).context("Failed to open file")?;
let mut decoder = GzDecoder::new(file);
let mut buf = vec![];
decoder
.read_to_end(&mut buf)
.context("Failed to read file")?;
let nbt: fastnbt::Value =
fastnbt::from_bytes(buf.as_slice()).context("Failed to decode NBT data")?;
println!("{:#x?}", nbt);
Ok(())
}