問題タブ [rubyzip]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
10951 参照

ruby - rubyでファイルを解凍する方法

さて、Ruby でファイルを解凍するための次のコードを見つけました。

この上で、必要なgemがインストールされていることを確認するために次を使用しています。

したがって、 unzip_file を呼び出すと、次のエラーが発生します。

私は何を間違っていますか?ありがとう!

0 投票する
0 に答える
659 参照

ruby-on-rails - 動的 csv ファイルを含む ruby​​zip

Rails 4とrubyzip gemがインストールされたアプリケーションがありました。学生、試験、結果の 3 つのテーブルがあります。

このビデオをフォローしましたhttp://railscasts.com/episodes/362-exporting-csv-and-excel

個々のテーブル csv ファイルをダウンロードできますが、1 回のクリックで 3 つすべてをダウンロードすることはできません。

そして、これら 3 つのテーブル csv ファイルをすべて ruby​​zip などで zip ファイルとしてダウンロードしたいと考えています。

私を助けてください。Google の隅々まで検索しましたが、正確な結果が見つかりませんでした。

0 投票する
1 に答える
2510 参照

ruby - Rubyで大きなcsvファイルをストリーミングして解凍する

非常に大きな CSV ファイルをダウンロードして解凍し、1 行ずつ処理する必要があるという問題があります。ファイルの大きさを教えていただけると助かります。

  • big_file.zip ~700MB
  • big_file.csv ~23GB

ここに私が起こりたいことがいくつかあります:

  • 解凍する前にファイル全体をダウンロードする必要はありません
  • csv 行を解析する前にファイル全体を解凍する必要はありません
  • これらすべてを実行している間、メモリ/ディスクをあまり使い切らないでください

それが可能かどうかはわかりません。これが私が考えていたことです:

私が知っている問題は次のとおりです。

  • open-uri応答全体を読み取り、Tempfileこのサイズのファイルには適していない に保存します。おそらくNet::HTTP直接使用する必要がありますが、それを行う方法がわかりませんが、IO.
  • ダウンロードがどれくらい速くなるか、またはZip::InputStream私が示したように機能するかどうかはわかりません. ファイルの一部がまだ解凍されていない場合、ファイルの一部を解凍できますか?
  • rubyzip でCSV.foreach動作しInputStreamますか? File行を解析できるように十分に動作しますか? 読みたいのにバッファが空の場合、びっくりしますか?

これが正しいアプローチであるかどうかはわかりません。たぶん、いくつかの EventMachine ソリューションの方が優れているでしょう (ただし、これまで EventMachine を使用したことはありませんが、このようなものでうまく機能する場合は、それで十分です)。

0 投票する
1 に答える
1486 参照

ruby - rubyzip、paperclip、rails 4 を使用して ZIP ファイルから画像を保存する

私はこれを行うためのより良い方法を受け入れていると言うことから始めましょう。

100 個の画像を含む zip ファイルがあるとします。zip ファイルをループして、各画像をレコードに「添付」したいと考えています。ActiveRecord のレコードに画像を添付するために Paperclip をインストールしました。これまでのところ、次のコードを使用しています。

これは私が最終的にしたいものです:

どうすればそれができますか?

0 投票する
1 に答える
2072 参照

ruby-on-rails - Ruby on Railsで一時zipファイルを削除/削除する

私は次のようtemp zipにレールtmpディレクトリにファイルを作成しています:-

tempzipfile_nameabc.zip20140816-8931-1yl3g60で、送信後に削除したいのですが見つかりません。

0 投票する
0 に答える
401 参照

ruby-on-rails-4 - rubyzip - Zip::File:Class に対して呼び出されるプライベート メソッド「open」 (Ruby on Rails 4)

アプリケーション コントローラーにヘルパー メソッドを追加しました。

エラーが表示されます:

これを Interactive Ruby シェルで実行すると、問題なく動作します。これをRails 4に実装するにはどうすればよいですか?

0 投票する
2 に答える
6297 参照

ruby-on-rails - 複数の csv ファイルを作成し、レールを使用して 1 つの zip アーカイブですべてダウンロードする

Rails アプリケーションで複数の csv ファイルを作成し、それらを 1 つの要求で 1 つの zip アーカイブとしてダウンロードする方法を探しています。

アーカイブを構築するには、rubyzip gem を使用します。これをダウンロードするには、Rails の組み込み関数 send_data のみを使用します。私が抱えている問題は、rubyzip の add-function がファイルをロードするためのパス名を必要とすることです。しかし、同じリクエスト内で csv ファイルが作成されるため、パスはありません。

いくつかのコード:

パス名を zipfile.add() に渡すことができる、csv ファイルを一時的にディレクトリに保存する方法はありますか?

皆さん、良い週末をお過ごしください。コーディングをお楽しみください。