]>
git.proxmox.com Git - rustc.git/blob - src/vendor/flate2/examples/gzdecoder-read.rs
3 use std
::io
::prelude
::*;
5 use flate2
::Compression
;
6 use flate2
::write
::GzEncoder
;
7 use flate2
::read
::GzDecoder
;
9 // Compress a sample string and print it after transformation.
11 let mut e
= GzEncoder
::new(Vec
::new(), Compression
::default());
12 e
.write_all(b
"Hello World").unwrap();
13 let bytes
= e
.finish().unwrap();
14 println
!("{}", decode_reader(bytes
).unwrap());
17 // Uncompresses a Gz Encoded vector of bytes and returns a string or error
18 // Here &[u8] implements Read
19 fn decode_reader(bytes
: Vec
<u8>) -> io
::Result
<String
> {
20 let mut gz
= GzDecoder
::new(&bytes
[..]);
21 let mut s
= String
::new();
22 gz
.read_to_string(&mut s
)?
;