• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ネストされた配列からのCSV出力の方法)

ネストされた配列からのCSV出力の方法

このQ&Aのポイント
  • Ruby(2.0)を使用して、ネストされた配列からCSVファイルに出力する方法を学びたいです。
  • CSVファイルの書式変換を行い、入力ファイル1と入力ファイル2の指定された列を移動して出力ファイルに保存する方法を知りたいです。
  • 配列をCSVに書き出すための方法がわからず困っています。カッコやダブルコーテーションなどの問題が発生しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • tatsu99
  • ベストアンサー率52% (391/751)
回答No.2

>(できれば こちらの方法で出力する方法も覚えたいのですが.. ^^; ) 以下のようにしてください。 ---------------------------- CSV::open("output.csv","wb") do |writer| output_ary.each do |ar| writer << ar end end -----------------------------

emu85
質問者

お礼

ありがとうございます!

その他の回答 (2)

  • tatsu99
  • ベストアンサー率52% (391/751)
回答No.3

#2です。windowsで実行する場合ですが 改行コードがCR+LFでファイルへ追加書き込みが希望でしたら ファイルオープン時、 CSV::open("output.csv","a") do |writer| としてください。 改行コードがCR+LFでファイルへ上書き書き込みが希望でしたら(以前のファイルの内容は削除されます) ファイルオープン時、 CSV::open("output.csv","w") do |writer| としてください。

emu85
質問者

お礼

ありがとうございます。 希望通りの結果が得られました。 ブロックも入れ子にしてしまうのですね.. まだ 動きがよく飲み込めていない気がするので、じっくりと確認してみます。 この4日間ほど(笑) 悩んでたことが 今日一日 いや半日で解決して とてもすっきりしました。 今後も 勉強に励みます。 たいへんありがとうございました! 

  • tatsu99
  • ベストアンサー率52% (391/751)
回答No.1

----以下の行をあなたのプログラムに追加してください------ output_ary.each do |ar| line = ar.join(",") print line,"\n" end ------------------------------------ 上記で、画面に出力されます。 ファイルに出力する場合は、リダイレクトしてください。

emu85
質問者

お礼

tatsu99 さん。 ご回答をありがとうございます。 希望通りの CSVファイルが作成できました。 標準出力のリダイレクトででできるのですね..  ずっと  CSV::open("output.csv","a") do |writer| writer << output_ary end ..の方法で正しく出力する方法を考えておりました。 (できれば こちらの方法で出力する方法も覚えたいのですが.. ^^; ) ありがとうございました!

関連するQ&A