質問編集履歴
4
()の追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -94,10 +94,6 @@
|
|
94
94
|
|
95
95
|
|
96
96
|
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
97
|
###補足情報(言語/FW/ツール等のバージョンなど)
|
102
98
|
|
103
99
|
以下に自分の環境と参考にしている書籍をまとめます。
|
@@ -110,7 +106,7 @@
|
|
110
106
|
|
111
107
|
- 書籍:Java本格入門 14-2-1 CSVとは
|
112
108
|
|
113
|
-
- 参考サイト:[Qiita(JavaでCSVを扱う](https://qiita.com/satio_koibuti/items/e90a9e30db289ac1b1f0)
|
109
|
+
- 参考サイト:[Qiita(JavaでCSVを扱う)](https://qiita.com/satio_koibuti/items/e90a9e30db289ac1b1f0)
|
114
110
|
|
115
111
|
|
116
112
|
|
3
参考サイトのリンク貼付
test
CHANGED
File without changes
|
test
CHANGED
@@ -110,7 +110,7 @@
|
|
110
110
|
|
111
111
|
- 書籍:Java本格入門 14-2-1 CSVとは
|
112
112
|
|
113
|
-
- 参考サイト[https://qiita.com/satio_koibuti/items/e90a9e30db289ac1b1f0
|
113
|
+
- 参考サイト:[Qiita(JavaでCSVを扱う](https://qiita.com/satio_koibuti/items/e90a9e30db289ac1b1f0)
|
114
114
|
|
115
115
|
|
116
116
|
|
2
リンク編集
test
CHANGED
File without changes
|
test
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
-
[https://ja.osdn.net/projects/sfnet_supercsv/releases/]
|
9
|
+
[Super CSVダウンロード画面](https://ja.osdn.net/projects/sfnet_supercsv/releases/])
|
10
10
|
|
11
11
|
|
12
12
|
|
1
クラスの中身を詳細に掲載
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,22 +1,106 @@
|
|
1
|
-
###前提・実現したいこと
|
1
|
+
### 前提・実現したいこと
|
2
2
|
|
3
3
|
super-csvを使ってCSVの読み込みを行いたいです。
|
4
4
|
|
5
5
|
以下のリンクからSuper CSVなるものをつかってCSVを読み込むクラスを作りたいと考えています。
|
6
6
|
|
7
|
+
|
8
|
+
|
7
|
-
https://
|
9
|
+
[https://ja.osdn.net/projects/sfnet_supercsv/releases/]
|
8
10
|
|
9
11
|
|
10
12
|
|
11
|
-
ですが、
|
13
|
+
おそらく、super-csv-distribution-2.3.1-bin.zipをダウンロードするのだと思っているのですが、ダウンロードをしてからどこに配置すればCSVを読み込むクラスを作れるのかをご教示いただきたいです。
|
12
14
|
|
13
15
|
|
14
16
|
|
17
|
+
### 作ってみたいクラス例
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
```
|
22
|
+
|
23
|
+
public class Employee {
|
24
|
+
|
25
|
+
private String name;
|
26
|
+
|
27
|
+
private Integer age;
|
28
|
+
|
29
|
+
private Date birth;
|
30
|
+
|
31
|
+
private String email;
|
32
|
+
|
33
|
+
private String note;
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
//getter setterは省略
|
38
|
+
|
39
|
+
```
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
```
|
44
|
+
|
15
|
-
|
45
|
+
// 項目 の 制約 を 定義 する
|
46
|
+
|
47
|
+
CellProcessor[] processors = new CellProcessor[]{
|
48
|
+
|
49
|
+
new NotNull(),
|
50
|
+
|
51
|
+
// name
|
52
|
+
|
53
|
+
new ParseInt( new NotNull()),
|
54
|
+
|
55
|
+
// age
|
56
|
+
|
57
|
+
new ParseDate(" yyyy/ MM/ dd"),
|
58
|
+
|
59
|
+
// birth
|
60
|
+
|
61
|
+
new StrRegEx("[ a-z 0-9\._]+@[ a-z 0-9\.]+"),
|
62
|
+
|
63
|
+
// email
|
64
|
+
|
65
|
+
new Optional()
|
66
|
+
|
67
|
+
//note
|
68
|
+
|
69
|
+
};
|
70
|
+
|
71
|
+
|
72
|
+
|
73
|
+
Path path = Paths. get(" employee. csv");
|
74
|
+
|
75
|
+
try (ICsvBeanReader beanReader = new CsvBeanReader( Files. newBufferedReader( path),
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
CsvPreference. STANDARD_ PREFERENCE)) {
|
80
|
+
|
81
|
+
String[] header = beanReader.getHeader(true);
|
82
|
+
|
83
|
+
Employee employee;
|
84
|
+
|
85
|
+
while((employee = beanReader.read(Employee. class, header, processors)) != null) {
|
86
|
+
|
87
|
+
// employee に対する 処理
|
88
|
+
|
89
|
+
}
|
90
|
+
|
91
|
+
}
|
92
|
+
|
93
|
+
```
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
|
16
98
|
|
17
99
|
|
18
100
|
|
19
101
|
###補足情報(言語/FW/ツール等のバージョンなど)
|
102
|
+
|
103
|
+
以下に自分の環境と参考にしている書籍をまとめます。
|
20
104
|
|
21
105
|
- IDE: IntelliJ IDEA CE
|
22
106
|
|
@@ -26,6 +110,8 @@
|
|
26
110
|
|
27
111
|
- 書籍:Java本格入門 14-2-1 CSVとは
|
28
112
|
|
113
|
+
- 参考サイト[https://qiita.com/satio_koibuti/items/e90a9e30db289ac1b1f0]
|
114
|
+
|
29
115
|
|
30
116
|
|
31
117
|
他に必要な情報があればお伝え下さい!
|