Documentation
¶
Overview ¶
Package zipstream provides support for reading ZIP archives through an io.Reader.
Index ¶
Constants ¶
const ( Store uint16 = 0 // no compression Deflate uint16 = 8 // DEFLATE compressed )
Compression methods.
Variables ¶
This section is empty.
Functions ¶
func RegisterDecompressor ¶
func RegisterDecompressor(method uint16, dcomp Decompressor)
RegisterDecompressor allows custom decompressors for a specified method ID. The common methods Store and Deflate are built in.
Types ¶
type Decompressor ¶
type Decompressor func(r io.Reader) io.ReadCloser
A Decompressor returns a new decompressing reader, reading from r. The ReadCloser's Close method must be used to release associated resources. The Decompressor itself must be safe to invoke from multiple goroutines simultaneously, but each returned reader will be used only by one goroutine at a time.
type Reader ¶
A Reader provides sequential access to the contents of a zip archive. A zip archive consists of a sequence of files, The Next method advances to the next file in the archive (including the first), and then it can be treated as an io.Reader to access the file's data. The Buffered method recovers any bytes read beyond the end of the zip file, necessary if you plan to process anything after it that is not another zip file.
func (*Reader) Buffered ¶
Buffered returns any bytes beyond the end of the zip file that it may have read. These are necessary if you plan to process anything after it, that isn't another zip file.
func (*Reader) Next ¶
func (r *Reader) Next() (*zip.FileHeader, error)
Next advances to the next entry in the zip archive.
io.EOF is returned when the end of the zip file has been reached. If Next is called again, it will presume another zip file immediately follows and it will advance into it.
func (*Reader) RegisterDecompressor ¶
func (r *Reader) RegisterDecompressor(method uint16, dcomp Decompressor)
RegisterDecompressor registers or overrides a custom decompressor for a specific method ID. If a decompressor for a given method is not found, Reader will default to looking up the decompressor at the package level.