全て
| カテゴリ未分類
| ゲーム制作関連
| C# VB
| お勧めのお酒
| 江戸川乱歩賞
| ミステリ
| 感動・泣ける本
| いろいろ
| お勧めソフト
| サスペンス・ホラー
| 人生・人間ドラマ
| 素人釣り
| 愉快な話
| ファンタジー・SF
| その他
| PCいろいろ
| ファーストクイーン
| 発毛日記
| ファーストクイン攻略2022
| ガーデニング
カテゴリ:C# VB
SCVファイルは StreamWriterを使って読み書きしようと思います。 これを使うときは空間名 using System.IO; を追加しないとダメだったような気がします。 SaveCSvという名前のメソッドで、引数にファイル名とデータグリッドビューを指定して呼び出します。 こんな感じ SaveCsv(@"D:\abc.csv", DataGridVew1); とりあえずここでは上側のヘッダー部分の書き出しをしてみます。 以下が呼び出される部分。 public void SaveCsv(String fp, DataGridView dgv) { // CSVファイルオープン StreamWriter sw = new StreamWriter(fp, false, System.Text.Encoding.GetEncoding("SHIFT-JIS")); //------------------------------------------- //ヘッダー部分の書き出し for (int h = 0; h <= dgv.ColumnCount - 1; h++) { // DataGridViewのセルのデータ取得 String dt = ""; if (dgv.Columns[h].HeaderCell.Value != null) { dt = dgv.Columns[h].HeaderCell.Value.ToString(); } if (h < dgv.Columns.Count - 1) { dt = dt + ","; } // CSVファイル書込 sw.Write(dt); } sw.Write("\n"); //ここからデータ部分の書き出し //ここにデータ全列全行のデータを書き出すコードを書く //ここまでデータ部分の書き出し sw.Close();//クローズ } まずは基礎知識を学ぶ必要がありました。私は「確かな力が身につくC#「超」入門」を読んで基礎を勉強しました。先にVBで基礎を学んでいたこともあり、とてもわかりやすかったです。 サンプルコードが多くのってる本は、あんまりお勧めできません。概念をちゃんと説明してくれる本じゃないとまったく応用がききません。よくある「ゲームで覚える」系は、初心者は絶対に手をだしてはいけません。私はゲーム作りがしたくてプログラミングを勉強しはじめたため、ああいう系の本はいろいろ買いましたけど、あんな本では私のような素人ではまったく理解できませんでした。遠回りのようでも、ちゃんと基礎を勉強したほうがいいでしょう。
データを書き込む部分は、ほぼヘッダーの書き出しと同じですが、行と列を両方やらないといけないので、forが二重になります。 for (int r = 0; r <= dgv.Rows.Count - 1; r++) { for (int c = 0; c <= dgv.Columns.Count - 1; c++) { // DataGridViewのセルのデータ取得 String dt = ""; if (dgv.Rows[r].Cells[c].Value != null) { dt = dgv.Rows[r].Cells[c].Value. ToString(); } if (c < dgv.Columns.Count - 1) { dt = dt + ","; } // CSVファイル書込 sw.Write(dt); } sw.Write("\n"); }
丁寧な方法をDOBON.NETさんで紹介しています。とても勉強になります。 https://dobon.net/vb/dotnet/file/writecsvfile.html お気に入りの記事を「いいね!」で応援しよう
Last updated
Nov 15, 2017 08:10:28 PM
コメント(0) | コメントを書く
[C# VB] カテゴリの最新記事
|