質問編集履歴
1
詩的内容を修正、クラスの継承は今回関係なので、削除
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,9 +1,11 @@
|
|
1
|
-
|
1
|
+
ご指摘の通り、変数名を変えてみました。
|
2
|
-
overrideしている箇所のLISTの定義でビルドエラーになります。
|
3
|
-
virtualの箇所と同じなのですが、どうしてエラーになるのか
|
4
|
-
いまいち理解できません。。
|
5
2
|
|
3
|
+
overrideは、ややこしいので、削除しました。
|
4
|
+
しかし、
|
5
|
+
コントロールが現在のメソッドを抜ける前に割り当てられる必要があります。
|
6
|
+
といったビルドエラーになります。
|
7
|
+
エラーのメッセージが言わんとしていることは理解できますが、
|
6
|
-
|
8
|
+
変数定義をどう変えればよいのか、わかりません。
|
7
9
|
|
8
10
|
```ここに言語を入力
|
9
11
|
using System;
|
@@ -23,23 +25,23 @@
|
|
23
25
|
{
|
24
26
|
MessageBox.Show("処理を開始します");
|
25
27
|
// out を使った場合、変数を初期化不要
|
26
|
-
List<string[]>
|
28
|
+
List<string[]> Data = new List<string[]>();
|
27
29
|
CsvEdit1 obj1 = new CsvEdit1();
|
28
|
-
obj1.ReadCsv(out
|
30
|
+
obj1.ReadCsv(out Data);
|
29
31
|
MessageBox.Show("ここでブレークポイントでチェック");
|
30
32
|
}
|
31
33
|
}
|
32
34
|
|
33
|
-
public class CsvEdit1
|
35
|
+
public class CsvEdit1
|
34
36
|
{
|
35
|
-
public
|
37
|
+
public void ReadCsv(out List<string[]> Data)
|
36
38
|
{
|
37
|
-
List<string[]>
|
39
|
+
List<string[]> tempData = new List<string[]>();
|
38
40
|
try
|
39
41
|
{
|
40
42
|
// csvファイルを開く
|
41
43
|
System.IO.DirectoryInfo dirPath =
|
42
|
-
new System.IO.DirectoryInfo(@"E:/
|
44
|
+
new System.IO.DirectoryInfo(@"E:/A/");
|
43
45
|
System.IO.FileInfo[] files =
|
44
46
|
dirPath.GetFiles("test_*.csv", System.IO.SearchOption.AllDirectories);
|
45
47
|
// 指定フォルダからCSVを取得し、配列に格納する。
|
@@ -57,7 +59,7 @@
|
|
57
59
|
// カンマ区切りで分割して配列に格納する
|
58
60
|
string[] record = line.Split(',');
|
59
61
|
|
60
|
-
|
62
|
+
tempData.Add(record);
|
61
63
|
}
|
62
64
|
}
|
63
65
|
}
|
@@ -70,46 +72,5 @@
|
|
70
72
|
}
|
71
73
|
}
|
72
74
|
}
|
73
|
-
|
74
|
-
public class CsvEdit
|
75
|
-
{
|
76
|
-
public virtual void ReadCsv()
|
77
|
-
{
|
78
|
-
List<string[]> stArrayData = new List<string[]>();
|
79
|
-
try
|
80
|
-
{
|
81
|
-
// csvファイルを開く
|
82
|
-
System.IO.DirectoryInfo dirPath =
|
83
|
-
new System.IO.DirectoryInfo(@"/");
|
84
|
-
System.IO.FileInfo[] files =
|
85
|
-
dirPath.GetFiles("test_*.csv", System.IO.SearchOption.AllDirectories);
|
86
|
-
// 指定フォルダからCSVを取得し、配列に格納する。
|
87
|
-
foreach (System.IO.FileInfo filePath in files)
|
88
|
-
{
|
89
|
-
using (var readCsv = new System.IO.StreamReader(filePath.FullName))
|
90
|
-
{
|
91
|
-
//ヘッダを読み捨てる。
|
92
|
-
readCsv.ReadLine();
|
93
|
-
// ストリームの末尾まで繰り返す
|
94
|
-
while (!readCsv.EndOfStream)
|
95
|
-
{
|
96
|
-
// ファイルから一行読み込む
|
97
|
-
string line = readCsv.ReadLine();
|
98
|
-
// カンマ区切りで分割して配列に格納する
|
99
|
-
string[] record = line.Split(',');
|
100
|
-
|
101
|
-
stArrayData.Add(record);
|
102
|
-
}
|
103
|
-
}
|
104
|
-
}
|
105
|
-
MessageBox.Show("読み込み完了しました。");
|
106
|
-
}
|
107
|
-
catch (System.Exception e)
|
108
|
-
{
|
109
|
-
// ファイルを開くのに失敗したとき
|
110
|
-
MessageBox.Show(e.ToString());
|
111
|
-
}
|
112
|
-
}
|
113
|
-
}
|
114
75
|
}
|
115
76
|
```
|