CSV
シーエスブイ(標準ライブラリ)
意味 カンマ区切りのデータ形式
CSVとは?
CSVは、Comma-Separated Valuesの略で、カンマで区切られた値を持つテキストデータ形式です。表形式のデータを簡単に扱えるため、データの交換や保存によく使われます。Rubyの標準ライブラリにはCSVを扱うためのクラスが用意されています。
CSVの具体的な使い方
CSVファイルの書き込み例
require 'csv'
# サンプルデータ
data = [
['名前', '年齢', '職業'],
['山田太郎', 28, 'エンジニア'],
['佐藤花子', 35, 'デザイナー'],
['鈴木一郎', 42, '営業']
]
# CSVファイルに書き込む
CSV.open('employees.csv', 'w') do |csv|
data.each do |row|
csv << row
end
end
puts 'CSVファイルが作成されました。'
# 作成されたCSVファイルの内容を表示
puts '\nファイルの内容:'
puts File.read('employees.csv')
👇出力結果
CSVファイルが作成されました。
ファイルの内容:
名前,年齢,職業
山田太郎,28,エンジニア
佐藤花子,35,デザイナー
鈴木一郎,42,営業
この例では、CSV.openメソッドを使用してCSVファイルを作成し、データを書き込んでいます。各行をリストとして追加することで、簡単にCSVファイルを生成できます。
CSVファイルの読み込み例
require 'csv'
# CSVファイルを読み込む
employees = []
CSV.foreach('employees.csv', headers: true) do |row|
employees << {
name: row['名前'],
age: row['年齢'].to_i,
job: row['職業']
}
end
# 読み込んだデータを表示
employees.each do |employee|
puts "#{employee[:name]}さん(#{employee[:age]}歳)は#{employee[:job]}です。"
end
👇出力結果
山田太郎さん(28歳)はエンジニアです。
佐藤花子さん(35歳)はデザイナーです。
鈴木一郎さん(42歳)は営業です。
この例では、CSV.foreachメソッドを使用してCSVファイルを読み込んでいます。headers: trueオプションを使うことで、1行目をヘッダーとして扱い、各行のデータに簡単にアクセスできます。
CSVに関するよくある質問
CSVが学べる書籍の紹介
「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、RubyのCSVやYAML、Net::HTTP、Tempfile、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。
よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。
HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。
Rubyを学べる「プログラミング単語帳」アプリ
プログラミング単語帳がアプリになりました!Rubyはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。
収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。
いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。
2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!
2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!