回答編集履歴
1
コメントへの返信内容を追記しました。
test
CHANGED
@@ -103,3 +103,83 @@
|
|
103
103
|
// }
|
104
104
|
|
105
105
|
```
|
106
|
+
|
107
|
+
|
108
|
+
|
109
|
+
---
|
110
|
+
|
111
|
+
|
112
|
+
|
113
|
+
(2016/03/22 00:21のコメントに対する追記)
|
114
|
+
|
115
|
+
|
116
|
+
|
117
|
+
「デバックで確認」とありましたので、そのデバッグのプロセスが残っているのではないかと推測しました。
|
118
|
+
|
119
|
+
Javaプロセスが終了していれば、ファイルをクローズしているかどうかにかかわらず、ファイルがつかみっぱなしになることはないはずです。
|
120
|
+
|
121
|
+
|
122
|
+
|
123
|
+
エラーハンドリングの例は、
|
124
|
+
|
125
|
+
ひとつは`UnsupportedEncodingException`なんかは、catchせずに、
|
126
|
+
|
127
|
+
`public static void main(String[] args) throws UnsupportedEncodingException {`
|
128
|
+
|
129
|
+
のようにしてmainメソッドの外に投げてしまえば、
|
130
|
+
|
131
|
+
処理の中断にもなるし、エラー処理を詳細に記述しなくて済みます。
|
132
|
+
|
133
|
+
|
134
|
+
|
135
|
+
もしくは、
|
136
|
+
|
137
|
+
|
138
|
+
|
139
|
+
```lang-java
|
140
|
+
|
141
|
+
try {
|
142
|
+
|
143
|
+
try (BufferedReader brC = new BufferedReader(new InputStreamReader(
|
144
|
+
|
145
|
+
new FileInputStream("C:/Users/temp/Desktop/inC.csv"),"JISAutoDetect"))) {
|
146
|
+
|
147
|
+
// inC.csvの処理
|
148
|
+
|
149
|
+
}
|
150
|
+
|
151
|
+
try (BufferedReader brM = new BufferedReader(new InputStreamReader(
|
152
|
+
|
153
|
+
new FileInputStream("C:/Users/temp/Desktop/inM.csv"),"JISAutoDetect"))) {
|
154
|
+
|
155
|
+
// inM.csvの処理
|
156
|
+
|
157
|
+
}
|
158
|
+
|
159
|
+
try (BufferedReader brA = new BufferedReader(new InputStreamReader(
|
160
|
+
|
161
|
+
new FileInputStream("C:/Users/temp/Desktop/inA.csv"),"JISAutoDetect"))) {
|
162
|
+
|
163
|
+
// inA.csvの処理
|
164
|
+
|
165
|
+
}
|
166
|
+
|
167
|
+
} catch(IOException e) {
|
168
|
+
|
169
|
+
System.err.println("エラー: " + e);
|
170
|
+
|
171
|
+
}
|
172
|
+
|
173
|
+
```
|
174
|
+
|
175
|
+
|
176
|
+
|
177
|
+
のようにして、例外が発生したら外側のcatchに飛んで、ただちに処理が中断するようにします。
|
178
|
+
|
179
|
+
`IOException`は`FileNotFoundException`を兼ねますので、一番外側で`IOException`をcatchするだけで良いです。
|
180
|
+
|
181
|
+
その場合、エラーメッセージは詳細には設定できませんが、その代わりにメインの処理に集中できます。
|
182
|
+
|
183
|
+
または`UnsupportedEncodingException`と同じように、mainメソッドの外に投げるようにしても良いです。
|
184
|
+
|
185
|
+
|