今日も元気に真人間

好き: 中日 、アニソン 、中本 、IT 、乃木坂46(乃木坂って、どこ?、乃木坂工事中)

C#でのCSVファイルの読み込み

C#を最近勉強中なので、CSVファイルの扱いを調べた。

Javaを割とよく使うので、それとの比較も。

 

 

Javaの場合

自分がいつも使っているのはopencsv。

csvファイルの読み込みの方針として、各行をオブジェクトとしてパースするか、単なる文字列配列として読み込むかの二択があると考えられるが、一々オブジェクトを定義しないといけなかったりヘッダがない場合があったりするので、自分としては後者の方が嬉しい。

csvファイルを読み込んで、List<String[]>に変換。

 

tbpgr.hatenablog.com

C#の場合

TextFieldParserがよさげ。

ちょっと古いライブラリのようで、いくつかバグが知られているらしいのだが、ひとまず使う分にはまあ大丈夫だろう。

opencsv同様、各行を文字列配列として読み込める。

blog.okazuki.jp

CsvHelperなるものもあるらしいのだが、ググってもオブジェクトにマッピングして読み込む使い方ばかりヒットするので、文字列配列のリストとして読み込めないかもう少し調べたい。

 

Visual StudioでのTextFieldParserの使い方

・ソリューションエクスプローラの「参照」右クリック「参照の追加」

Microsoft.VisualBasicにチェック

・using Microsoft.VisualBasic.FileIO;