これは使えると思ったのでメモ。
エクセルで入力してもらったものをcsvで出力してもらって、それを1行づつ個別ファイルを作っていきます。例えば、個人の成績を入力してもらって、それを個人にテキストファイルで渡す時など。
まず、ヘッダー部分を英語表記に変換
そして、csvで出力してもらいます。
必ず# encoding: utf-8
を記述しましょう。忘れるとエラーが出ます。
# encoding: utf-8
require 'csv'
CSV.foreach('sample.csv', headers: true) do |score|
File.open("#{score['name']}","w") do |kobetsu|
kobetsu.puts("氏名:#{score['name']}")
kobetsu.puts("数学:#{score['arithmetic']}")
kobetsu.puts("英語:#{score['english']}")
end
end
んで、これを実行するとこうなります。ちゃんと3つファイルが個別に生成されています。