質問編集履歴
1
編集
test
CHANGED
File without changes
|
test
CHANGED
@@ -26,10 +26,128 @@
|
|
26
26
|
|
27
27
|
|
28
28
|
|
29
|
+
/// <summary>
|
30
|
+
|
29
|
-
///
|
31
|
+
/// CSV出力ボタン押下時
|
30
32
|
|
31
33
|
/// </summary>
|
32
34
|
|
35
|
+
private void CSV_Output_Click(object sender, EventArgs e)
|
36
|
+
|
37
|
+
{
|
38
|
+
|
39
|
+
// SaveFileDialogを作成する
|
40
|
+
|
41
|
+
SaveFileDialog result = new SaveFileDialog();
|
42
|
+
|
43
|
+
result.Title = "ファイルを保存する";
|
44
|
+
|
45
|
+
// 初期表示時のディレクトリを指定
|
46
|
+
|
47
|
+
result.InitialDirectory = @"C:\Users\Admin\Downloads";
|
48
|
+
|
49
|
+
// ファイル名を指定、取得する
|
50
|
+
|
51
|
+
result.FileName = @"ForOutput.csv";
|
52
|
+
|
53
|
+
// 選択できるファイルの種類を指定する
|
54
|
+
|
55
|
+
result.Filter = "CSV (カンマ区切り)|*.csv";
|
56
|
+
|
57
|
+
// ファイル出力(保存)ダイアログ表示
|
58
|
+
|
59
|
+
DialogResult FileOutput = result.ShowDialog();
|
60
|
+
|
61
|
+
|
62
|
+
|
63
|
+
// dataGridViewからデータ取得(Loop処理)
|
64
|
+
|
65
|
+
if (FileOutput == DialogResult.OK)
|
66
|
+
|
67
|
+
{
|
68
|
+
|
69
|
+
//「保存」ボタンが押された時の処理
|
70
|
+
|
71
|
+
string fileName = result.FileName; //指定されたファイルのパスを取得する
|
72
|
+
|
73
|
+
}
|
74
|
+
|
75
|
+
else if (FileOutput == DialogResult.Cancel)
|
76
|
+
|
77
|
+
{
|
78
|
+
|
79
|
+
//「キャンセル」ボタンまたは「×」ボタンが選択された時の処理
|
80
|
+
|
81
|
+
}
|
82
|
+
|
83
|
+
|
84
|
+
|
85
|
+
// 保存用のファイルを開く ( ファイルパス )( ファイル名 ) (文字コード指定)
|
86
|
+
|
87
|
+
using (StreamWriter writer = new StreamWriter(@"C:\Users\Admin\Downloads\ForOutput.csv", false, Encoding.GetEncoding("shift_jis")))
|
88
|
+
|
89
|
+
{
|
90
|
+
|
91
|
+
int rowCount = DataGrid.Rows.Count;
|
92
|
+
|
93
|
+
if (DataGrid.AllowUserToAddRows == true)
|
94
|
+
|
95
|
+
{
|
96
|
+
|
97
|
+
// rowCount 最後の新規入力用の1行分を差し引く
|
98
|
+
|
99
|
+
rowCount = rowCount - 1;
|
100
|
+
|
101
|
+
}
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
// 行 rowCount DataGrildViewの行数文ループ
|
106
|
+
|
107
|
+
for (int i = 0; i < rowCount; i++)
|
108
|
+
|
109
|
+
{
|
110
|
+
|
111
|
+
// リストの初期化
|
112
|
+
|
113
|
+
List<String> strList = new List<String>();
|
114
|
+
|
115
|
+
// 列 Columns.Coun カルムと同じ数だけループする
|
116
|
+
|
117
|
+
for (int j = 0; j < DataGrid.Columns.Count; j++)
|
118
|
+
|
119
|
+
{
|
120
|
+
|
121
|
+
strList.Add(DataGrid[j, i].Value.ToString());
|
122
|
+
|
123
|
+
}
|
124
|
+
|
125
|
+
|
126
|
+
|
127
|
+
// 配列へ変換
|
128
|
+
|
129
|
+
String[] strArray = strList.ToArray();
|
130
|
+
|
131
|
+
// CSV 形式に変換(ファイル出力)
|
132
|
+
|
133
|
+
String strCsvData = String.Join(",", strArray);
|
134
|
+
|
135
|
+
writer.WriteLine(strCsvData);
|
136
|
+
|
137
|
+
}
|
138
|
+
|
139
|
+
}
|
140
|
+
|
141
|
+
}
|
142
|
+
|
143
|
+
|
144
|
+
|
145
|
+
/// <summary>
|
146
|
+
|
147
|
+
/// 入出庫種別の値変換
|
148
|
+
|
149
|
+
/// </summary>
|
150
|
+
|
33
151
|
private void DataGrid_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
|
34
152
|
|
35
153
|
{
|
@@ -54,6 +172,8 @@
|
|
54
172
|
|
55
173
|
}
|
56
174
|
|
175
|
+
|
176
|
+
|
57
177
|
// e.Valueの値が1なら"入庫"に変換
|
58
178
|
|
59
179
|
if (int.Parse(e.Value.ToString()) == 1)
|
@@ -64,6 +184,8 @@
|
|
64
184
|
|
65
185
|
}
|
66
186
|
|
187
|
+
|
188
|
+
|
67
189
|
// e.Valueの値が2なら"出庫"に変換
|
68
190
|
|
69
191
|
else if (int.Parse(e.Value.ToString()) == 2)
|
@@ -78,4 +200,6 @@
|
|
78
200
|
|
79
201
|
}
|
80
202
|
|
203
|
+
|
204
|
+
|
81
205
|
```
|