CSVの出力は標準ライブラリを特に工夫せずに使っています。型へと変換してやる部分だけです。2つの巨人の肩に乗り、巨人から巨人へとデータを送ることしかしていません*2。秒くらいで目処が立ったのですが、形にするとそこそこ時間がかかるものですね。困りゴト特にファイルからの入力を実装したので、1回の入力で複数のテーブルが渡された時にどうしようか悩んでいます。2hoge,fuga3,4のように、どのテーブルかわかればいいのではないかとも思うんですが、そうするとリダイレクトでCSVが作れなくなってしまいます。現在は1つめの表のみをCSVに変換するようになっています(2つ以上表が入力されても何の警告もなく無視します)。自分の中で複数の表を扱うユースケースが発生すれば考えるのですが、現在は特に思いついていないのでしばらくは放置でいいかなと思っています。おわりにあまりきれいなコードではないですが、自分としてはこれで満足しています*3。Windowsでの動作確認はしていないので動かないかもしれません。