teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2018/06/22 04:56

投稿

YAmaGNZ
YAmaGNZ

スコア10674

answer CHANGED
@@ -1,25 +1,50 @@
1
+ 出力したい内容は下記の内容だと思います。
2
+
3
+ ---
4
+ 見出し1,見出し2,見出し3,見出し4
5
+ データ1-1,データ1-2,データ1-3,データ1-4
6
+ データ2-1,データ2-2,データ2-3,データ2-4
7
+ データ3-1,データ3-2,データ3-3,データ3-4
8
+ データ4-1,データ4-2,データ4-3,データ4-4
9
+
10
+ ---
11
+
12
+ 上記の内容を出力しようとすると、ヘッダ部は最初に1回だけ
13
+ 出力すればいいだけです。
14
+ ですので、データ部分の出力のループに入れるのではなく、
1
15
  ヘッダ部の出力とデータ部の出力を分けてください。
16
+
2
17
  ```
18
+ List<String> strList;
3
19
 
20
+ strList = new List<String>();
4
21
  // ヘッダ部の出力
22
+ // Columns.Count カルムと同じ数だけループする
5
23
  for (int j = 0; j < DataGrid.Columns.Count; j++)
6
24
  {
7
- //ヘッダを出力
25
+ //カラムのヘッダのテキストリストに追加
8
26
  }
27
+ // 配列へ変換
28
+ // CSV 形式に変換(ファイル出力)
9
29
 
10
- // データの出力
30
+ // データの出力
31
+ // rowCount 行数文ループ
11
32
  for (int i = 0; i < rowCount; i++)
12
33
  {
13
34
  // リストの初期化
14
- List<String> strList = new List<String>();
35
+ strList = new List<String>();
15
36
 
16
37
  // Columns.Count カルムと同じ数だけループする
17
38
  for (int j = 0; j < DataGrid.Columns.Count; j++)
18
39
  {
19
- //データの出力
40
+ //列と行を追加していく。
20
41
  }
42
+ // 配列へ変換
43
+ // CSV 形式に変換(ファイル出力)
21
44
  }
22
45
 
23
46
  ```
47
+ 元ソースのコメントを入れて、分かりやすくしてみました。
48
+
24
49
  DataGridViewからCSVへ出力するサンプルは検索すればたくさん出てきますから
25
50
  参照されてはどうでしょう?