C# で CSV ファイルを読み込み、その値を配列に格納する

  1. CSV ファイルを読み取り、その値を StreamReader クラスを使用して「配列」に格納する C# プログラム
  2. CSV ファイルを読み取り、その値を Microsoft.VisualBasic.FileIO ライブラリの TextFieldParser を使用して Array に格納する C# プログラム

CSV ファイルはカンマ区切りのファイルで、整理された方法でデータを保存するために使用されます。通常、データは表形式で格納されます。ほとんどの企業では、データを CSV ファイルに保存しています。

C# では、CSV ファイルに対してさまざまな操作を実行できます。CSV ファイルの読み取り、書き込み、変更を行うことができます。この記事では、CSV ファイルを読み取り、そのデータを配列に保存するさまざまな方法に焦点を当てています。

CSV ファイルを読み取り、その値を StreamReader クラスを使用して「配列」に格納する C# プログラム

C# では、StreamReader クラスを使用してファイルを処理します。それは、さまざまな種類のファイルを開いたり、読んだり、他の機能を実行するのに役立ちます。このクラスを使用しながら、CSV ファイルに対してさまざまな操作を実行することもできます。

OpenRead() メソッドは CSV ファイルを開くために使用され、ReadLine() メソッドはその内容を読み取るために使用されます。

OpenRead() および ReadLine() メソッドを使用する正しい構文は次のとおりです。

//OpenRead() Syntax
File.OpenRead(@"FilePath");
//ReadLine() Syntax
StreamReaderObject.ReadLine();

コード例:

using System.IO;
using System.Collections.Generic;
using System;

class ReadingCSV
{
    static void Main(string[] args)
    {
        var reader = new StreamReader(File.OpenRead(@"D:\New folder\Data.csv"));
        List<string> listA = new List<string>();
        List<string> listB = new List<string>();
        while (!reader.EndOfStream)
        {
            var line = reader.ReadLine();
            var values = line.Split(';');

            listA.Add(values[0]);
            listB.Add(values[1]);
            foreach (var coloumn1 in listA)
            {
                Console.WriteLine(coloumn1);
            }
            foreach (var coloumn2 in listA)
            {
                Console.WriteLine(coloumn2);
            }
        }
    }
}

出力:

//Contents of the CSV file

CSV ファイルを読み取り、その値を Microsoft.VisualBasic.FileIO ライブラリの TextFieldParser を使用して Array に格納する C# プログラム

C# には、その内容に基づいてファイルを解析する File Parser があります。TextFieldParserMicrosoft.VisualBasic.FileIO ライブラリで定義されています。以下のプログラムを実行する前に、Microsoft.VisualBasic への参照を追加することを忘れないでください。

このパーサーを使用するための正しい構文は次のとおりです。

TextFieldParser ParserName = new TextFieldParser(PathString);

コード例:

using System;
using Microsoft.VisualBasic.FileIO;

class ReadingCSV
{
   public static void Main()
    {
        string coloumn1;
        string coloumn2;
        var path = @"D:\New folder\Data.csv";
        using (TextFieldParser csvReader = new TextFieldParser(path))
        {
            csvReader.CommentTokens = new string[] { "#" };
            csvReader.SetDelimiters(new string[] { "," });
            csvReader.HasFieldsEnclosedInQuotes = true;

            // Skip the row with the column names
            csvReader.ReadLine();

            while (!csvReader.EndOfData)
            {
                // Read current line fields, pointer moves to the next line.
                string[] fields = csvReader.ReadFields();
                coloumn1 = fields[0];
                coloumn2 = fields[1];
            }
            
        }
    }
}

関連記事 - Csharp CSV file

  • C# で CSV ファイルにデータを書き込む
  • 関連記事 - Csharp Array

  • C# で CSV ファイルにデータを書き込む
  • comments powered by Disqus