回答編集履歴

1

追記

2018/06/22 04:56

投稿

YAmaGNZ
YAmaGNZ

スコア10222

test CHANGED
@@ -1,22 +1,64 @@
1
+ 出力したい内容は下記の内容だと思います。
2
+
3
+
4
+
5
+ ---
6
+
7
+ 見出し1,見出し2,見出し3,見出し4
8
+
9
+ データ1-1,データ1-2,データ1-3,データ1-4
10
+
11
+ データ2-1,データ2-2,データ2-3,データ2-4
12
+
13
+ データ3-1,データ3-2,データ3-3,データ3-4
14
+
15
+ データ4-1,データ4-2,データ4-3,データ4-4
16
+
17
+
18
+
19
+ ---
20
+
21
+
22
+
23
+ 上記の内容を出力しようとすると、ヘッダ部は最初に1回だけ
24
+
25
+ 出力すればいいだけです。
26
+
27
+ ですので、データ部分の出力のループに入れるのではなく、
28
+
1
29
  ヘッダ部の出力とデータ部の出力を分けてください。
30
+
31
+
2
32
 
3
33
  ```
4
34
 
35
+ List<String> strList;
5
36
 
6
37
 
38
+
39
+ strList = new List<String>();
40
+
7
41
  // ヘッダ部の出力
42
+
43
+ // Columns.Count カルムと同じ数だけループする
8
44
 
9
45
  for (int j = 0; j < DataGrid.Columns.Count; j++)
10
46
 
11
47
  {
12
48
 
13
- //ヘッダを出力
49
+ //カラムのヘッダのテキストリストに追加
14
50
 
15
51
  }
16
52
 
53
+ // 配列へ変換
54
+
55
+ // CSV 形式に変換(ファイル出力)
17
56
 
18
57
 
58
+
19
- // データの出力
59
+ // データの出力
60
+
61
+ // rowCount 行数文ループ
20
62
 
21
63
  for (int i = 0; i < rowCount; i++)
22
64
 
@@ -24,7 +66,7 @@
24
66
 
25
67
  // リストの初期化
26
68
 
27
- List<String> strList = new List<String>();
69
+ strList = new List<String>();
28
70
 
29
71
 
30
72
 
@@ -34,9 +76,13 @@
34
76
 
35
77
  {
36
78
 
37
- //データの出力
79
+ //列と行を追加していく。
38
80
 
39
81
  }
82
+
83
+ // 配列へ変換
84
+
85
+ // CSV 形式に変換(ファイル出力)
40
86
 
41
87
  }
42
88
 
@@ -44,6 +90,10 @@
44
90
 
45
91
  ```
46
92
 
93
+ 元ソースのコメントを入れて、分かりやすくしてみました。
94
+
95
+
96
+
47
97
  DataGridViewからCSVへ出力するサンプルは検索すればたくさん出てきますから
48
98
 
49
99
  参照されてはどうでしょう?