📝
RubyでCSVファイルの行を削除する
想定されるCSVファイル
id | title | content |
---|---|---|
1 | a | America |
2 | b | Brazil |
3 | c | China |
csv.csv
1,a,America
2,b,Brazil
3,c,China
CSVファイルから、特定のidを持つ行を削除する
require 'csv'
# csvファイルを読み出して配列の配列にする
arrays = CSV.read('csv.csv')
# 特定のidを持つ配列を削除する
arrays.delete_if{ |array| array[0] == id }
# 特定のidを持つ配列を削除した配列の配列をcsvに書き込む
CSV.open('csv.csv', 'w') do |csv|
arrays.each do |array|
csv << array
end
end
Discussion