【Ruby】CSVに上書きで書き込みするやり方を解説します

こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在4社経験している、11年目エンジニアです。

この記事では、 RubyでCSVに上書きで書き込みするやり方について

  • CSVに上書きで書き込みするやり方を解説
  • 実際にCSVに書き込むサンプルプログラム

と、この記事で丁寧に解説していきます。

前提条件:実行環境について

実行環境は以下の通りです。

OS Windows10
Rubyのバージョン 2.6.6

この記事ではRubyプログラムは

C:\rubystudy

に作成しています。

CSVに上書きで書き込みするやり方を解説

CSVに上書きで書き込みするやり方を解説します。
RubyでCSVを扱いたい場合

を、まず宣言しておく必要があります。

CSVに書き込むためには

  1. openメソッドで書き込むCSVを指定
  2. putsメソッドまたは<<配列演算子で書き込む

という段取りで書き込みます。
サンプルは以下になります。

それぞれの引数の意味は下記です。
RubyでCSVに上書きで書き込みをするやり方を解説
上記を実行するとプログラムが格納している同じ場所の「sample.csv」が
RubyでCSVに上書きで書き込みをするやり方を解説

という内容に上書きされます。
もしファイルがなければ、自動で生成されます。

openメソッドの第一引数に指定するパスは

  • 相対パス
  • 絶対パス

どちらでもOKです。
それぞれのパスについては、以下の記事をご参考ください。

第二引数の「w」の意味は、上書きで書き込みを行うという意味です。

では、次の章で実際に使ってみます。

CSVに上書きで書き込みを解説するプログラムの概要

CSVに上書きで書き込みを解説するプログラムはopenメソッドに指定するパスは

  • 存在するCSV(絶対パス)
  • 存在しないCSV(相対パス)

の2パターンで書き込みを行います。
実行前後でどうなっているのかを比較して確認します。

カレントディレクトリは

C:\rubystudy

として、同じ階層にrubyプログラムを作成します。

Rubyサンプルプログラム

実行結果

CSVに上書きで書き込みを実行する前の状態を確認します。

C:\rubystudy\sample\hogehoge

に「test.csv」が存在していることを確認しました。
RubyでCSVに上書きで書き込みをするやり方を解説
CSVの中身は以下のようになっています。
RubyでCSVに上書きで書き込みをするやり方を解説

カレントディレクトリには「hogehoge.csv」が存在しないことを確認しました。
RubyでCSVに上書きで書き込みをするやり方を解説

実行して本当にCSVに書き込みができているかを確認します。
Rubyプログラムを実行するやり方は、以下の記事をご参考ください。

RubyでCSVに上書きで書き込みをするやり方を解説

無事実行できたので、それぞれを確認します。

C:\rubystudy\sample\hogehoge

の「test.csv」が実行前から更新されていて
RubyでCSVに上書きで書き込みをするやり方を解説
中身が指定した内容に上書きできていることが確認できました。
RubyでCSVに上書きで書き込みをするやり方を解説

カレントディレクトリには「hogehoge.csv」が作成されていて
RubyでCSVに上書きで書き込みをするやり方を解説
中身が指定した内容に書き込みできていることが確認できました。
RubyでCSVに上書きで書き込みをするやり方を解説

まとめ:CSVに上書きで書き込みをしてみよう!

以上がCSVに上書きで書き込みするやり方についての解説でした!

あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ

コメント

タイトルとURLをコピーしました