Hallo,
ich möchte gerne alle Dateien aus einem Ressource Folder laden und in einem Array speichern:
Leider ist File[] files immer NULL...
Wie kann ich das lösen?
Ich möchte gerne die Dateien aus dem laufenden Wildfly laden.
Da das dynamisch ist, möchte ich aber immer erst auf das Verzeichnis prüfen... Also sprich ich starte mit "DocumentDesigner", wenn hier Dateien drin sind, dann lade diese... Wenn es ein Verzeichnis ist, dann gehe eine Ebene weiter usw...
ich möchte gerne alle Dateien aus einem Ressource Folder laden und in einem Array speichern:
Leider ist File[] files immer NULL...
Wie kann ich das lösen?
Java:
public void loadFiles(){
File dir = loadFileFromResourceFolder(FILE_PATH_DOCUMENT_DESIGNER);
// Ignore .DS_Store
File[] files = dir.listFiles(new FilenameFilter() {
public boolean accept(File dir, String name) {
return !name.equals(".DS_Store");
}
});
}
/**
* Datei als Stream aus Pfad laden
*
* @throws IOException
* @throws URISyntaxException
*/
public static File loadFileFromResourceFolder(String filePath) throws URISyntaxException {
LOGGER.info("START loadFileFromResourceFolder");
ClassLoader classLoader = new StorageHelper().getClass().getClassLoader();
URL resource = classLoader.getResource(filePath);
if (resource == null) {
throw new IllegalArgumentException("file not found! " + filePath);
} else {
// failed if files have whitespaces or special characters
// return new File(resource.getFile());
URI uri = resource.toURI();
String fileName = uri.toString();
if(fileName.toString().endsWith("/")) {
fileName = fileName.substring(0, fileName.length()-1);
}
return new File(fileName);
}
}
Ich möchte gerne die Dateien aus dem laufenden Wildfly laden.
Da das dynamisch ist, möchte ich aber immer erst auf das Verzeichnis prüfen... Also sprich ich starte mit "DocumentDesigner", wenn hier Dateien drin sind, dann lade diese... Wenn es ein Verzeichnis ist, dann gehe eine Ebene weiter usw...