Class: PureRubyZip::ZipFile
- Inherits:
-
Object
- Object
- PureRubyZip::ZipFile
show all
- Includes:
- ZipHelpers
- Defined in:
- lib/pure_ruby_zip.rb
Instance Method Summary
collapse
Methods included from ZipHelpers
#find_string, #read_int, #skip
Constructor Details
#initialize(filename) ⇒ ZipFile
Returns a new instance of ZipFile.
240
241
242
243
|
# File 'lib/pure_ruby_zip.rb', line 240
def initialize(filename)
@filename = filename
get_items_metadata @filename
end
|
Instance Method Details
#decompress_all_files ⇒ Object
249
250
251
252
253
254
255
256
257
258
259
260
|
# File 'lib/pure_ruby_zip.rb', line 249
def decompress_all_files
decompressed_files = []
File.open(@filename) do |file|
decompressed_files = @items.keys.map do |path|
{
path: path,
data: @items[path].get_decompressed_data(file)
}
end
end
decompressed_files
end
|
#decompress_all_files_to_disk ⇒ Object
261
262
263
264
265
266
267
268
269
270
271
272
273
274
|
# File 'lib/pure_ruby_zip.rb', line 261
def decompress_all_files_to_disk
dir_of_zip_file = File.dirname(@filename)
zipfile_without_extension = File.basename @filename, ".*"
= "#{dir_of_zip_file}/#{zipfile_without_extension}"
Dir.mkdir() unless Dir.exist?()
decompress_all_files.each do |decompressed_item|
path = decompressed_item[:path]
data = decompressed_item[:data]
= "#{extract_dir_path}/#{path}"
File.open(, "w") do ||
.write data
end
end
end
|
#decompress_file(path) ⇒ Object
244
245
246
247
248
|
# File 'lib/pure_ruby_zip.rb', line 244
def decompress_file(path)
File.open(@filename) do |file|
@items[path].get_decompressed_data file
end
end
|