【C#】~CSVファイル読み込みをやってみた~

【C#】~CSVファイル読み込みをやってみた~

あいさつ

今日は久しぶりにC#で開発を行いました。

そこでcsvファイルの読み込みを実装してみました。

開発環境

  • OS:Windows10
  • 開発環境:Visual Studio 2019
  • FrameWork4

ソースコード

早速ですがソースコードを書きます。

今回は、ボタンクリック時にBODY.csvをいうファイルを読み込み、ラベルに表示をします。

なので、btn_Clickの中身を紹介します。

   try
		  {
                // CSVファイルの読み込み
                string filePath = @"D:\Visual Studio 2019\Data\BODY.csv";
                // 読み込んだファイルの文字列格納
                string read_csv = "";
                // StreamReaderクラスをインスタンス化
                StreamReader reader = new StreamReader(filePath, Encoding.GetEncoding("UTF-8"));
                // 最後まで読み込む
                while (reader.Peek() >= 0)
                {
                    // 読み込んだ文字列をカンマ区切りで配列に格納
                    string[] cols = reader.ReadLine().Split(',');
                    for (int n = 0; n < cols.Length; n++)
                    {
                        read_csv = read_csv + cols[n] + ",";
                    }
                    Console.ReadLine();
                }
                reader.Close();

                label_1.Text = read_csv;
            }
			catch (IOException err)
			{
				// ファイルを読み込めない場合エラーメッセージを表示
				Console.WriteLine("ファイルを読み込めませんでした");
				Console.WriteLine(err.Message);
			}

簡単に作ったものなので、読み込んだcsvデータの最後に”,”が1個余分についてしまいます。

これは今後改良します。

一応csvの読み込み行うので、エラー処理 (例外処理) でプログラムが止まらないようにしています。

まとめ

本当はcsvを読み込むよりもデータベースとかの方が良い気がしますが、自分にそこまでの技術がないので今のところはcsvで進めていこうと思います。