Name von Verzeichnis bekommen - Files von einem Ordner auslesen

beta20

Top Contributor
Hallo zusammen,

ich möchte gerne folgendes realisieren:
Ich habe einen Ordner "Test1", was mein Root - Folder ist.
Darunter gibt es Unterordner (Test1, Test2...). Darunter gibt es dann die Sprachen (de, en)... Und innerhalb dieser Ordner gibt es dann die Dateien.

Was ich benötige:
- a) Schleife über diesen Ordner, der alle File einließt
- b) Ordner (Sprache) bekommen, sodass ich später in einem Objekt den Sprachschlüssel speichern kann.

Files
- Test1
- de
- test.html
- en
- test.html

- Test2
- de
- test.html
- en
- test.html

Also später dann, sowas:
Java:
MyClass myObject = new MyClass();
myObject.setLanguage(Name vom Ordner der Datei);
myObject.setText(String von der Datei);

Die Files kann ich ja so einlesen:
Java:
        File f = new File("C:/Programme");
        File[] fileArray = f.listFiles();
        
        for (int i = 0; i < fileArray.length; i++) {
            
            File currentFile = fileArray[i];
            
            if(!currentFile.isDirectory()) {
                -> Wann speichere ich den Namen des Verzeichnis ab oder kann ich den Verzeichnisnamen der jeweiligen Datei von dem File ansich bekommen?
            }
        }

Danke für die Hilfe.
 

Robat

Top Contributor
Wenn du ein Ordner gefunden hast, holst du dir von diesem Ordner alle Dateien, gehst diese durch, liest sie ein, und erstellst aus dessen Inhalt und dem aktuellen Ordernamen dein MyClass Objekt. Das lässt sich auch sehr schön rekursiv machen :p


PS: Ich würde das ganze wohl eher über einen FileVisitor lösen anstatt händisch anzufangen, zu entscheiden, ob du jetzt einen Ordner hast oder nicht.
Java:
public class Main {
    public static void main(String[] args) {
        List<LocalizedFile> files = new ArrayList<>();

        SimpleFileVisitor<Path> visitor = new SimpleFileVisitor<Path>() {
            private String language;
            @Override
            public FileVisitResult preVisitDirectory(Path dir, BasicFileAttributes attrs) throws IOException {
                this.language = dir.getFileName().toString();
                return FileVisitResult.CONTINUE;
            }

            @Override
            public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException {
                files.add(new LocalizedFile(language, String.join("\n", Files.readAllLines(file))));
                return FileVisitResult.CONTINUE;
            }
        };

        try {
            Files.walkFileTree(Paths.get("D:/Files"), visitor);
            files.forEach(System.out::println);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    static class LocalizedFile {
        private String language;
        private String content;

        public LocalizedFile(String language, String content) {
            this.language = language;
            this.content = content;
        }

        @Override
        public String toString() {
            return "lang[" + language + "]\n" + content + "\n";
        }
    }
}
 

mrBrown

Super-Moderator
Mitarbeiter
Was willst du denn erreichen?
Das klingt nach üblicher Internationalisierung, wofür es meist bessere Möglichkeiten gibt.
 

beta20

Top Contributor
Ich möchte gerne HTML Dateien einlesen.

Ich habe beim Mac noch irgendwelche Temporäre Files (.DS_Store), wie kann ich diese ausschließen?
 

mrBrown

Super-Moderator
Mitarbeiter
Und die Dateien sind nicht Teil des Programms und liegen im Dateisystem?


Zum Ausschließen von Dateien einfach ’n if mit passender Bedingung, das ist doch wirklich kein Hexenwerk ;)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
A PHP $_POST["name"] in Java Java Basics - Anfänger-Themen 3
B JaxB - Unique Name updaten / Referenzen in XML Java Basics - Anfänger-Themen 0
R Call-by-Value, Call-by-Reference, Call-by-Name Ausgabe Java Basics - Anfänger-Themen 1
F Auto String mit Array Name aus Datei... oder so ähnlich Java Basics - Anfänger-Themen 4
E gleicher Name in der Basisklasse und in der Subklasse Java Basics - Anfänger-Themen 45
K File-Name Vergleich Java Basics - Anfänger-Themen 2
J javax.servlet.ServletException: Name is null Java Basics - Anfänger-Themen 7
D jsoup get class name mit leerzeichen Java Basics - Anfänger-Themen 7
J ArrayList Name mit String erstellen Java Basics - Anfänger-Themen 8
B Get property field von Name Java Basics - Anfänger-Themen 9
D Name eines JMenue als Parameter übergeben Java Basics - Anfänger-Themen 20
M Objekt Name für MethodenAufruf nachträglich zuweisen? Java Basics - Anfänger-Themen 2
W DNS Name auslesen + weitere Anfängerfrage Java Basics - Anfänger-Themen 4
L Name im Array suchen Java Basics - Anfänger-Themen 12
K Mit Scanner aus einer txt Datei lesen und jede Person mit name, vorname, geburtsdatum speichern Java Basics - Anfänger-Themen 5
M Name der Komponete/Variabel/Methode Java Basics - Anfänger-Themen 5
I Spieler Name eintragen und Random Gewinner Java Basics - Anfänger-Themen 4
D Taskmanager Name Java Basics - Anfänger-Themen 2
I JTree, Root-Name ändern Java Basics - Anfänger-Themen 4
T Erste Schritte Elemente finden, deren Name erst "zusammengesetzt" wird Java Basics - Anfänger-Themen 8
S Vererbung Fehlermeldung: the hierarchy of the type "class name" is inconsistent Java Basics - Anfänger-Themen 10
D Name einer Variable als String nutzen Java Basics - Anfänger-Themen 13
T Name des Objektes OOP Java Basics - Anfänger-Themen 4
O String name mit fortlaufender Nummer Java Basics - Anfänger-Themen 14
Y ENUM auslesen (Name des ENUM als Variable) Java Basics - Anfänger-Themen 4
S Name eines boolean ausgeben (nicht den Wert) Java Basics - Anfänger-Themen 43
D Mysql schauen Name bereits existiert Java Basics - Anfänger-Themen 7
E Java Name von Exe festlegen? Java Basics - Anfänger-Themen 7
T brauche den pfad Name! Java Basics - Anfänger-Themen 2
F String-Inhalt als Datatype-Name Java Basics - Anfänger-Themen 5
D Methode anhand deren Name aufrufen Java Basics - Anfänger-Themen 4
N Name zu sehr ähnlich??? Java Basics - Anfänger-Themen 12
K Datentypen Full qualified Name dynamisch gestalten Java Basics - Anfänger-Themen 7
E Welcher Package Name bei Eclipse/Android? Java Basics - Anfänger-Themen 2
H2SO3- name der klasse ausgeben Java Basics - Anfänger-Themen 6
-horn- public static double[][][] NAME() nur per RETURN Wertrückgabe möglich? Java Basics - Anfänger-Themen 20
Z objekt erstellen von canonical name einer klasse Java Basics - Anfänger-Themen 6
A Klasse importieren wenn 2 mal gleicher Name Java Basics - Anfänger-Themen 2
O DocumentListener -> Name des JTextFields bekommen Java Basics - Anfänger-Themen 2
J Parameter (Methode) -> Name eines Objekt Java Basics - Anfänger-Themen 3
G Name der Instanz einer Klasse. Java Basics - Anfänger-Themen 2
X Der Name des jars finden? Java Basics - Anfänger-Themen 8
J Objekt-name in Array speichern Java Basics - Anfänger-Themen 12
B jar name ermitteln Java Basics - Anfänger-Themen 6
X Ordner mit Tageszeit als Name anlegen Java Basics - Anfänger-Themen 5
J ArrayListen mit Name und Vater an JTree übergeben Java Basics - Anfänger-Themen 3
T Rechner-Name abfragen Java Basics - Anfänger-Themen 6
K java.lang.NoClassDefFoundError: Klasse (wrong name... Java Basics - Anfänger-Themen 17
V mehrere Instanzen gleicher Name möglich? Java Basics - Anfänger-Themen 3
G XML nächstes Child element (gleicher name) Java Basics - Anfänger-Themen 5
A String Array: Suche nach Name -> Wert? Java Basics - Anfänger-Themen 3
G name vom objekt Java Basics - Anfänger-Themen 8
B Name und PLZ begrenzen Java Basics - Anfänger-Themen 3
K Objekte erstellen, wenn der Klassen-Name als String vorliegt Java Basics - Anfänger-Themen 4
D Name eines Terminals herausfinden Java Basics - Anfänger-Themen 3
M Kette- oder der Java Name Java Basics - Anfänger-Themen 2
G Name von java-Dateien, *.java Java Basics - Anfänger-Themen 9
G Name einlesen Java Basics - Anfänger-Themen 15
B Woher kommt der Name Java? Java Basics - Anfänger-Themen 4
O viele Name mit jeweils zugehörigen Status in .txt Speichern Java Basics - Anfänger-Themen 16
T System.getProperty("os.name") Java Basics - Anfänger-Themen 13
G File Name Case Sensitive Java Basics - Anfänger-Themen 2
R Welche Componente (Name)? Java Basics - Anfänger-Themen 2
S Variabler Name für ein Objekt einer Klasse? Java Basics - Anfänger-Themen 10
X Property user.name über Konsole verändern Java Basics - Anfänger-Themen 6
F Array Unterschied Typ name[] Typ[] name Java Basics - Anfänger-Themen 7
D Name eines Objekts ermitteln Java Basics - Anfänger-Themen 5
L Name für Objekt übergeben Java Basics - Anfänger-Themen 3
P Standard resources-Verzeichnis ändern Java Basics - Anfänger-Themen 9
J Alle .java Dateien von einem Verzeichnis in eine Zip speichern Java Basics - Anfänger-Themen 2
J Alle Dateien aus einem Verzeichnis laden Java Basics - Anfänger-Themen 10
S Verzeichnis Lese-Berechtigung entziehen Java Basics - Anfänger-Themen 1
S Image Datei selektieren und in Projekt Verzeichnis abspeichern/kopieren Java Basics - Anfänger-Themen 16
F Verzeichnis synchronisieren Java Basics - Anfänger-Themen 3
R Input/Output Dateinamen aus Verzeichnis in Datei schreiben Java Basics - Anfänger-Themen 3
M java.io.FileNotFoundException trotz dass Verzeichnis korrekt angegeben ist! Java Basics - Anfänger-Themen 20
M Erste Schritte Ordner im selber Verzeichnis wählen Java Basics - Anfänger-Themen 1
J Lokales Verzeichnis -> Globales Verzeichnis Java Basics - Anfänger-Themen 10
D Input/Output Ordner aus .Jar in das Verzeichnis der .Jar kopieren Java Basics - Anfänger-Themen 1
B Dateien aus dem "resource" - Folder kopieren in Verzeichnis Java Basics - Anfänger-Themen 9
B "Vor" Verzeichnis bekommen Java Basics - Anfänger-Themen 1
I Automatisch Verzeichnis erstellen bei File erstellen Java Basics - Anfänger-Themen 5
A Datei im erstelltem Verzeichnis erstellen? Java Basics - Anfänger-Themen 1
Z Gleiches Verzeichnis für class und java unter Windows Muss? Java Basics - Anfänger-Themen 11
Traxx JDK installieren .java nur im Java\bin Verzeichnis ausführbar Java Basics - Anfänger-Themen 22
S 3 Fragen, Verzeichnis, GridLayout psoitionieren, Werte für JSpinner Java Basics - Anfänger-Themen 2
D Input/Output Verständnisfrage Verzeichnis-/Dateiliste erstellen & Dateikonvertierung Java Basics - Anfänger-Themen 1
K Bin-Verzeichnis Java Basics - Anfänger-Themen 4
E Bild per Verzeichnis/JFileChooser auf JPanel laden Java Basics - Anfänger-Themen 13
kaoZ Input/Output Verzeichnis Inhalt in combobox ausgeben Java Basics - Anfänger-Themen 8
M Verzeichnis ausgeben mit Unterverzeichnissen und einzelnen Dateien Java Basics - Anfänger-Themen 18
S Darüberliegende Verzeichnis ansprechen Java Basics - Anfänger-Themen 3
C Datei in bestimmtes Verzeichnis speichern Java Basics - Anfänger-Themen 2
E Erste Schritte Verzeichnis auslesen, Dateinamen in Array speichern :-( Java Basics - Anfänger-Themen 7
P javac Verzeichnis Java Basics - Anfänger-Themen 2
N Input/Output mit FileDialog Verzeichnis wechseln Java Basics - Anfänger-Themen 20
eLogic Input/Output Liest Verzeichnis nicht aus??? Java Basics - Anfänger-Themen 6
G Bilder aus dem Projekt Verzeichnis werden n. angezeigt Java Basics - Anfänger-Themen 7
B Files aus Verzeichnis zählen Java Basics - Anfänger-Themen 9
M Verzeichnis öffnen? Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben