1
JDK 6を使用してJARファイルをビルドする必要があります。これは、会社のラップトップで使用され、 ITの人々を通して。Javaを使用してCSVReaderのtry-with-resourcesエラーを解決する方法6
だから、どのようにこの方法のためのtry-と資源のエラーを回避するには:
は、Javaを使用するように強制している場合のtry-とリソース構文は唯一のJava 7で導入されましたpublic static String importFile(String filepath){
String insertQuery = "INSERT INTO SALESMAN VALUES (?,?)";
String status;
try (CSVReader reader = new CSVReader(new FileReader(filepath), ','); //error here
Connection connection = DBConnection.getConnection();){
Statement stmt = connection.createStatement();
PreparedStatement pstmt = connection.prepareStatement(insertQuery);
String[] rowData = null;
int i = 0;
while((rowData = reader.readNext()) != null){
for (String data : rowData){
pstmt.setString((i % 2) + 1, data);
if (++i % 2 == 0)
pstmt.addBatch();
if (i % 20 == 0)
pstmt.executeBatch();
}
}
status = "Successfully uploaded";
} catch (Exception ex) {
ex.printStackTrace();
}
return status;
}
:6、あなたは古き良き
finally
句に頼る必要があるだろうか?これにより、閉じられていない 'FileReader'オブジェクトが残されます。 – Grogi@GrogiこれはOPでも処理されなかったので、私はそれに対処しませんでした。一般的に言えば、 'try'ブロックの外に**宣言された**すべてのリソース参照変数をそれらの中で**初期化し、' finally'ブロック内でそれをそれらの順序と逆の順序で閉じる必要がありますで初期化されました。 – Mureinik