[C#]タブ区切り(TSV)のファイルを項目単位に読み取る

C#でタブ区切りのファイルを開き、1項目ずつ読み取る方法を紹介します。

//区切り文字設定
char[] delimiter = new char[] { 't' };

//ファイルストリームリーダー作成
// InputFilePath にはタブ区切りファイルのパスを指定して下さい。
StreamReader reader = new StreamReader(InputFilePath);

//ファイルレコードが存在するまでループ
while (reader.Peek() >= 0)
{
    //読み取った行をタブで区切り、文字列配列に格納
    string[] cols = reader.ReadLine().Split(delimiter);

    //項目値取得
    col1value = cols[0];
    col2value = cols[1];
    col3value = cols[2];
}

1. 区切り文字の指定

今回の区切り文字であるタブを指定します。

char[] delimiter = new char[] { 't' };

2. ファイルリーダーの作成

ファイルリーダーを作成します。InputFilePathには、読み込むタブ区切りのファイルパスを指定して下さい。

StreamReader reader = new StreamReader(InputFilePath);

3. ファイルレコードが存在するまでループ

while (reader.Peek() >= 0)
{
 ...
}

4. ファイルを1行読み取って、指定した区切り文字で分割して、文字列配列に格納

string[] cols = reader.ReadLine().Split(delimiter);

5. 各項目の値を取得

    col1value = cols[0];
    col2value = cols[1];
    col3value = cols[2];

おすすめ本 c#コードレシピ集

c#コードレシピ集は、「文字列を大文字あるいは小文字に変換したい」や「Taskをキャンセルしたい」など逆引き的にコードの書き方を調べられるレシピ集です。

2021年8月に発売された本で、全部で385個のレシピが収録されています。

ジャンルは日付処理やLINQ、並列処理と非同期処理など幅広く記載されています。

Kindle対応ですので、まずはサンプルをダウンロードして何が書かれているか確認してはいかがでしょうか。

コメント

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