pub struct GzHeader { /* private fields */ }
Expand description
A structure representing the raw header of a gzip stream.
The header can contain metadata about the file that was compressed, if present.
Implementations§
Source§impl GzHeader
impl GzHeader
Sourcepub fn filename(&self) -> Option<&[u8]>
pub fn filename(&self) -> Option<&[u8]>
Returns the filename
field of this gzip header, if present.
The filename
field the gzip header is supposed to be stored using ISO 8859-1 (LATIN-1)
encoding and be zero-terminated if following the specification.
Sourcepub fn comment(&self) -> Option<&[u8]>
pub fn comment(&self) -> Option<&[u8]>
Returns the comment
field of this gzip stream’s header, if present.
The comment
field in the gzip header is supposed to be stored using ISO 8859-1 (LATIN-1)
encoding and be zero-terminated if following the specification.
Sourcepub const fn mtime(&self) -> u32
pub const fn mtime(&self) -> u32
Returns the mtime
field of this gzip header.
This gives the most recent modification time of the contained file, or alternatively
the timestamp of when the file was compressed if the data did not come from a file, or
a timestamp was not available when compressing. The time is specified the Unix format,
that is: seconds since 00:00:00 GMT, Jan. 1, 1970. (Not that this may cause problems for
MS-DOS and other systems that use local rather than Universal time.)
An mtime
value of 0 means that the timestamp is not set.
Sourcepub fn mtime_as_datetime(&self) -> Option<SystemTime>
pub fn mtime_as_datetime(&self) -> Option<SystemTime>
Returns the mtime
field of this gzip header as a SystemTime
if present.
Returns None
if the mtime
is not set, i.e 0.
See mtime
for more detail.
Trait Implementations§
Source§impl Display for GzHeader
impl Display for GzHeader
Source§fn fmt(&self, f: &mut Formatter<'_>) -> Result
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Crudely display the contents of the header
Note that filename/commend are required to be ISO 8859-1 (LATIN-1) encoded by the spec, however to avoid dragging in dependencies we simply interpret them as UTF-8. This may result in garbled output if the names contain special characters.