回答編集履歴

2

net48

2023/04/02 12:47

投稿

TN8001
TN8001

スコア9396

test CHANGED
@@ -18,9 +18,11 @@
18
18
  保存があれ(ただカンマで繋げるだけ)なら、読み込みも`Split`するだけでいいんじゃないですかね?
19
19
 
20
20
  ```cs
21
+ using System;
21
22
  using System.Data;
23
+ using System.IO;
22
24
  using System.Text;
23
-
25
+ using System.Windows.Forms;
24
26
 
25
27
  namespace Q1fyr16mcto59tg
26
28
  {
@@ -39,8 +41,6 @@
39
41
  dt.Columns.Add("値段", typeof(int));
40
42
 
41
43
  ItemListDataGridView.DataSource = dt;
42
-
43
- Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
44
44
  }
45
45
 
46
46
  private void CalculateButton_Click(object sender, EventArgs e)
@@ -134,7 +134,7 @@
134
134
  if (0 == dt.Rows.Count) return;
135
135
 
136
136
  // 日付を保存
137
- string date = dt.Rows[0].Field<string>("日付")!;
137
+ string date = dt.Rows[0].Field<string>("日付");
138
138
 
139
139
  // 選択行の削除
140
140
  foreach (DataGridViewRow r in ItemListDataGridView.SelectedRows)
@@ -171,7 +171,7 @@
171
171
 
172
172
  foreach (string line in File.ReadLines(dlg.FileName, Encoding.GetEncoding("shift_jis")))
173
173
  {
174
- string[] array = line.Split(",");
174
+ string[] array = line.Split(',');
175
175
  DataRow row = dt.NewRow();
176
176
  row["日付"] = array[0];
177
177
  row["商品"] = array[1];
@@ -199,10 +199,12 @@
199
199
  return;
200
200
  }
201
201
 
202
- using StreamWriter writer = new StreamWriter(dlg.FileName, false, Encoding.GetEncoding("shift_jis"));
202
+ using (StreamWriter writer = new StreamWriter(dlg.FileName, false, Encoding.GetEncoding("shift_jis")))
203
+ {
203
- foreach (DataRow row in dt.Rows)
204
+ foreach (DataRow row in dt.Rows)
204
- {
205
+ {
205
- writer.WriteLine(string.Join(",", row.ItemArray));
206
+ writer.WriteLine(string.Join(",", row.ItemArray));
207
+ }
206
208
  }
207
209
  }
208
210
 
@@ -212,8 +214,8 @@
212
214
  int total = 0;
213
215
  foreach (DataRow row in dt.Rows)
214
216
  {
215
- int count = row.Field<int>("個数")!;
217
+ int count = row.Field<int>("個数");
216
- int price = row.Field<int>("値段")!;
218
+ int price = row.Field<int>("値段");
217
219
 
218
220
  graph += new string('■', count) + Environment.NewLine;
219
221
  total += price;

1

不要コード

2023/04/02 08:41

投稿

TN8001
TN8001

スコア9396

test CHANGED
@@ -77,8 +77,6 @@
77
77
  else
78
78
  {
79
79
  dt.Clear();
80
- GraphTextBox.Text = "";
81
- TotalTextBox.Text = "";
82
80
  }
83
81
 
84
82
  DataRow row = dt.NewRow();