Hallo,
ich suche mit meinem Code Messwertdateien, die ich auslese und in eine DB schreibe. Danach möchte ich die gefundene Datei löschen. Leider wird nicht immer jede Datei gelöscht.
Vielleicht habt ihr ne Idee
Mein Code:
ich suche mit meinem Code Messwertdateien, die ich auslese und in eine DB schreibe. Danach möchte ich die gefundene Datei löschen. Leider wird nicht immer jede Datei gelöscht.
Vielleicht habt ihr ne Idee
Mein Code:
Java:
public static isOK find(String start, String extensionPattern, isOK ISOK) throws ParseException, SQLException, IOException {
List<File> files = new ArrayList<>(1024);
Stack<File> dirs = new Stack<>();
File startdir = new File(start);
Pattern p = Pattern.compile(extensionPattern, Pattern.CASE_INSENSITIVE);
if (startdir.isDirectory()) {
dirs.push(startdir);
}
while (dirs.size() > 0) {
for (File file: dirs.pop().listFiles()) {
if (file.isDirectory()) {
dirs.push(file);
} else if (p.matcher(file.getName()).matches()) {
files.add(file);
ISOK.setFile(file.toString());
FileHandler.fileToSplit(file, ISOK);
}
}
}
System.out.println("Size List files " + files.size());
if (files.size() > 0) {
System.out.println("Yes");
for (int i = 1; i < files.size(); i++) {
System.out.println("lösche: " + files.get(i));
deleteFile(files.get(i));
}
}
return ISOK;
}
public static void deleteFile(File f) throws IOException, SQLException {
try {
boolean result = f.delete();
if (result) {
ConnectDB.getWriteLog("FileConverter", "Datei gelöscht " + f.toString());
f = null;
} else {
ConnectDB.getWriteLog("FileConverter", "Datei nicht gelöscht " + f.toString());
}
} catch (Exception e) {
ConnectDB.getWriteLog("FileConverter", "Exception deleteFile " + f.toString() + "Ex = " + e.toString());
}
}
Zuletzt bearbeitet von einem Moderator: