忘れた頃に出くわすので防備録代わりに。
パラメータや取り込み対象のデータ、外部への出力として、CSVファイルを取り扱う場面が出てくる。
その際の基本的なコードを以下に示す。
StreamWriter、StreamReaderクラスを使って
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
private void write_csv(string fname) { var encode = System.Text.Encoding.GetEncoding("SHIFT_JIS"); using (var wt = new System.IO.StreamWriter(fname, false, encode)) { wt.WriteLine(出力データ); // 1行出力 : } } private void read_csv(string fname) { if (File.Exists(fname)) { using (StreamReader reader = new StreamReader(fname, Encoding.GetEncoding("SHIFT_JIS"))) { var skip = reader.ReadLine(); // ヘッダ読み飛ばし while (!reader.EndOfStream) { var line = reader.ReadLine(); // 1行読み込み string[] val = line.Split(','); (以下valの値を処理) : } } } } |
例によってエラー処理などは省いているため、適宜追加のこと。
また上記はWindowsで動作することを想定しているため、データの文字コードには注意。
“CSVファイルの入出力(C#)” への 0 件のフィードバック