class Compress::Zip::Reader
Overview
Reads zip file entries sequentially from an IO.
NOTE  Entries might not have correct values
for crc32, compressed_size, uncompressed_size and comment,
because when reading a zip file directly from a stream this
information might be stored later in the zip stream.
If you need this information, consider using Zip::File.
Example
require "compress/zip"
Compress::Zip::Reader.open("./file.zip") do |zip|
  zip.each_entry do |entry|
    p entry.filename
    p entry.file?
    p entry.dir?
    p entry.io.gets_to_end
  end
endDefined in:
compress/zip/reader.crConstructors
- 
        .new(io : IO, sync_close = false)
        
          Creates a new reader from the given io. 
- 
        .new(filename : String)
        
          Creates a new reader from the given filename. 
Class Method Summary
- 
        .open(io : IO, sync_close = false, &)
        
          Creates a new reader from the given io, yields it to the given block, and closes it at the end. 
- 
        .open(filename : String, &)
        
          Creates a new reader from the given filename, yields it to the given block, and closes it at the end. 
Instance Method Summary
- 
        #close : Nil
        
          Closes this zip reader. 
- 
        #closed? : Bool
        
          Returns trueif this reader is closed.
- 
        #each_entry(&)
        
          Yields each entry in the zip to the given block. 
- 
        #next_entry : Entry?
        
          Reads the next entry in the zip, or nilif there are no more entries.
- 
        #sync_close=(sync_close)
        
          Whether to close the enclosed IOwhen closing this reader.
- 
        #sync_close? : Bool
        
          Whether to close the enclosed IOwhen closing this reader.
Instance methods inherited from class Reference
  
  
    
      ==(other : self)==(other : JSON::Any)
==(other : YAML::Any)
==(other) ==, dup dup, hash(hasher) hash, initialize initialize, inspect(io : IO) : Nil inspect, object_id : UInt64 object_id, pretty_print(pp) : Nil pretty_print, same?(other : Reference) : Bool
same?(other : Nil) same?, to_s(io : IO) : Nil to_s
Constructor methods inherited from class Reference
  
  
    
      new
    new
    
  
    
  
    
  Instance methods inherited from class Object
  
  
    
      ! : Bool
    !, 
    
  
    
      !=(other)
    !=, 
    
  
    
      !~(other)
    !~, 
    
  
    
      ==(other)
    ==, 
    
  
    
      ===(other : JSON::Any)===(other : YAML::Any)
===(other) ===, =~(other) =~, as(type : Class) as, as?(type : Class) as?, class class, dup dup, hash(hasher)
hash hash, in?(collection : Object) : Bool
in?(*values : Object) : Bool in?, inspect(io : IO) : Nil
inspect : String inspect, is_a?(type : Class) : Bool is_a?, itself itself, nil? : Bool nil?, not_nil! not_nil!, pretty_inspect(width = 79, newline = "\n", indent = 0) : String pretty_inspect, pretty_print(pp : PrettyPrint) : Nil pretty_print, responds_to?(name : Symbol) : Bool responds_to?, tap(&) tap, to_json(io : IO) : Nil
to_json : String to_json, to_pretty_json(indent : String = " ") : String
to_pretty_json(io : IO, indent : String = " ") : Nil to_pretty_json, to_s(io : IO) : Nil
to_s : String to_s, to_yaml(io : IO) : Nil
to_yaml : String to_yaml, try(&) try, unsafe_as(type : T.class) forall T unsafe_as
Class methods inherited from class Object
  
  
    
      from_json(string_or_io, root : String)from_json(string_or_io) from_json, from_yaml(string_or_io : String | IO) from_yaml
Constructor Detail
Class Method Detail
Creates a new reader from the given io, yields it to the given block, and closes it at the end.
Creates a new reader from the given filename, yields it to the given block, and closes it at the end.
Instance Method Detail
Reads the next entry in the zip, or nil if there
are no more entries.
After reading a next entry, previous entries can no
longer be read (their IO will be closed.)