私は Podio アプリケーションを使用しています。Podio データベースからデータを取得して xlsx ファイルに入れ、roo を使用して csv に変換する小さなスクリプトを作成しました。
xlsx = Podio::Item.xlsx( <app_number>, options = {} )
fname = "blah.xlsx"
somefile = File.open(fname, "w")
somefile.puts xlsx
somefile.close
xlsx_data = Roo:Spreadsheet.open(fname)
csv = xlsx_data.to_csv
puts csv
したがって、これは機能しますが、データを再度取得してcsvに変換するためだけにファイルに出力するのは...ずさんなようです。ファイルに出力せずに変数に入れてからcsvに変換して、ファイルを出力しないようにする方法はありますか?
Podio::Item.xlsx からの出力に StringIO.new を使用しようとしましたが、応答として次のようになりました。
file = StringIO.new(xlsx)
`extname': no implicit conversion of StringIO into String (TypeError)
Podioのドキュメントでこれについて何も見ませんでした:https ://developers.podio.com/doc/items/get-items-as-xlsx-63233何をするかではなく、xlsxファイルをエクスポートする方法について言及しただけですその後です。
何かご意見は?