問題タブ [fastercsv]
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.
ruby-on-rails - FasterCSV: ファイルを受け入れる前に無効かどうかを確認します - もっと簡単な方法はありますか?
Ruby on Rails アプリケーションで FasterCSV を使用していますが、現在、ファイルが無効な場合は例外がスローされます。
FasterCSV docを調べたところ、ブロックでFasterCSV::parseを使用すると、メモリをあまり割り当てずに、一度に 1 行ずつファイルを読み取るようです。ファイルに何らかのエラーがある場合、 FasterCSV::MalformedCSV例外がスローされます。
カスタム ソリューションを実装しましたが、それが最適なソリューションかどうかはわかりません (以下の回答を参照してください)。代替案を知りたい
ruby-on-rails - Ruby 1.9.2 での fastcsv エラー
Ruby 1.9.2で実行している既存のRailsアプリケーションがあり、LinuxのRailsバージョンは
また、GEMFILE もあり、vendor/gems ディレクトリには「fastercsv-1.5.4」gem
があり、移行 (2 回の移行) には gem「fastercsv」が必要です。
しかし、私がするとき
移行の主張に失敗します
「Ruby 1.9 の標準 CSV ライブラリに切り替えてください。FasterCSV に加えて、Ruby 1.9 の m17n エンコーディング エンジンをサポートしています。」
そして、メッセージが宝石の「faster_csv.rb」ファイルから来ていることがわかりました。rubyのバージョンを確認する条件があるので
誰かがこの問題を解決する方法を教えてもらえますか? 「fastercsv」は GEMFILE に追加されていないことに注意してください。
mysql - データをデータベースにインポートする FasterCSV チュートリアル?
FasterCSV を使用して Ruby アプリにデータをインポートし、それを SQLite または MySQL データベースに保存する方法を示すチュートリアルを知っている人はいますか?
具体的な手順は次のとおりです。
- ファイルを1行ずつ読み取る(
.foreach
メソッドはドキュメントに従ってこれを行います) - ファイル内のヘッダー名をデータベースの列名にマッピングする
.new
CSV データのデータベースにエントリを作成する (ブロック内およびブロック.save
内で実行可能と思われる.foreach
)
これは基本的な使用シナリオですが、チュートリアルを見つけることができなかったので、リソースがあれば役に立ちます。
ありがとう!
ruby-on-rails - Ruby 1.8.7 で FasterCSV を使用したオンラインでの不正な引用
SQL ダンプのコンテンツを解析すると、「不正な引用」エラーが発生し、ダンプ ファイルがタブ (\t) 区切り文字付きの TXT 形式になっています。
プログラムは実行され、正常に実行されましたが、以下のような無効なデータが存在します (@font-face ...) は、「行 3 での引用が不正です。
column に無効なデータが発生したときにスキップする方法を教えてもらえますか?
前もって感謝します。
ruby-on-rails - タブセパレータを使用してTXTファイルからデータを解析するにはどうすればよいですか?
ルビー 1.8.7 、レール 2.3.8 を使用しています。タブで区切られたTXTダンプファイルからデータを解析したい。
この TXT ダンプには、無効なデータがあるように見えるいくつかの CSS プロパティが含まれています。
FasterCSV gem を使用してコードを実行すると
コンソールに「Illegal quoteing on line 38」と書かれたエラー。無効なデータを含む行をスキップし、残りの行のデータロードプロセスを続行する方法を教えてもらえますか?
ruby-on-rails - CSVはSafariビューでレンダリングされますが、ファイルをダウンロードしたいのですが
カスタムmimeタイプを構成しました:
コントローラーのrespond_toブロック:
FirefoxとChromeを使用すると、.csvはダウンロードされたファイルにレンダリングされます。Safariを使用すると、.csvがビューとしてレンダリングされます。これを変更してファイルとして強制的にダウンロードするにはどうすればよいですか?
問題のスクリーンショットを参照してください。
ruby - fastCsv 例外処理
私はcsvファイルでMalformedCSVErrorの問題に直面しています.そして、私が立ち往生している行は以下の通りです:
"# 利用可能な "IP-to-Country" データベースの文字通り何百ものソース。男"
行に二重引用符が含まれているため.実行はここで停止しました例外は: FasterCSV::MalformedCSVError
この状況をどのように処理できますか.csvファイルも編集できません..
これについて私を助けてください。
ruby-on-rails - Rails が FasterCSV 出力でエンティティをエンコードしないようにする方法
Rails 3 アプリケーションでレポートの CSV 出力を生成するために FasterCSV を使用しています。コード スニペットを次に示します。
FasterCSV に空の文字列が含まれる場合、空の二重引用符のペアが使用されます。
残念ながら、Rails 3 はこれらの引用符をエンティティとしてエンコードしているため、Excel ではうまく機能しません。私のCSV出力は次のようになります(b.commentsがnilまたは空の文字列の場合):
Railsがこれらのエンティティをエンコードするのを防ぐために一般的に受け入れられている方法は何ですか? メソッドについては知ってraw
いますが、CSV 生成を入れることができるブロックは必要ありません。
ruby - Ruby 1.9でCSV::RowをCSV::Tableに追加するときのヘッダーの意味は何ですか?
Ruby 1.9 で CSV::Table に行を追加しようとしています (質問は Ruby 1.8 の FasterCSV にも適用されます)。新しい行の列の順序がテーブルと異なる場合、ヘッダーが正しく指定されていても、要素が間違った列に追加されます。新しい行のヘッダーが無視されているように見えます。
出力:
ただし、ヘッダーを明示的に指定しているため、CSV が新しい行のヘッダーをテーブルのヘッダーと一致させ、次の出力を生成することが期待されます。
説明はありますか?新しい行を作成する前に自分で列を並べ替える以外に何かできることはありますか?