Expand description
Reader and Writer library for cpio archives
§Read
let mut file = File::open("archive.cpio").unwrap();
let mut archive = ArchiveReader::<NewcHeader>::from_reader_with_offset(&mut file, 0).unwrap();
// extract bytes from all in archive
for object in &archive.objects.inner {
let mut out = OpenOptions::new()
.write(true)
.create(true)
.open(object.header.as_header().name)
.unwrap();
archive.reader.extract_data(object, &mut out).unwrap();
}
§Write
let file = File::create("archive.cpio").unwrap();
let mut writer = ArchiveWriter::<NewcHeader>::new(Box::new(file));
// A
let a_data = "a\n".as_bytes();
let a_header = Header { name: "a".to_string(), ..Header::default()};
writer.push_file(Cursor::new(a_data), a_header).unwrap();
// write to archive
writer.write().unwrap();
Re-exports§
pub use newc::NewcHeader;
pub use odc::OdcHeader;
Modules§
Structs§
- Archive
Reader - Read cpio Archive and extract data
- Archive
Writer - Write cpio Archive and add data
- Header
- Common representation of cpio Header
- Object
- Object in cpio archive
- Objects
- All objects in archive
Enums§
Traits§
- Cpio
Header - Common information between types of cpio headers
- Cpio
Reader - Extract data from cpio Archive
- Read
Seek Read
+Seek
- Write
Seek Write
+Seek