簡體   English   中英

使用Rubyzip壓縮現有文件

[英]Zipping an existing file with Rubyzip

我想使用rubyzip存檔“ zip”現有文件:

C:\\ TextFile.txt的

textfile.zip

我知道如何將流添加到文本文件:

require 'zip/zip'

 Zip::ZipFile.open("mp.zip", Zip::ZipFile::CREATE) {
   |zipfile|
    zipfile.get_output_stream("text.txt") { |f| f.puts "Creating text file" }
    }

而不是如何將現有文件添加到zip中。 謝謝你的幫助

這將讀取源文件,並將其一次寫入1mb。

我已經在生產中使用非常相似的東西了一段時間。

require 'zip/zip'

Zip::ZipFile.open("mp.zip", Zip::ZipFile::CREATE) do |zipfile|
    zipfile.get_output_stream("text.txt") do |out_file|
      File.open("text.txt") do |in_file|
        while blk = in_file.read(1024**2)
          out_file << blk
        end
      end
    end
end

希望這能回答您的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM