Das sollte wirklich einfach sein. Wenn ich einen String wie diesen habe:
../Test?/sample*.txt
Was ist dann ein allgemein akzeptierter Weg, um eine Liste von Dateien zu erhalten, die diesem Muster entsprechen? (zB sollte es passen ../Test1/sample22b.txt
und ../Test4/sample-spiffy.txt
aber nicht ../Test3/sample2.blah
oder ../Test44/sample2.txt
)
Ich habe es mir angesehen org.apache.commons.io.filefilter.WildcardFileFilter
und es scheint das richtige Biest zu sein, aber ich bin mir nicht sicher, wie ich es verwenden soll, um Dateien in einem relativen Verzeichnispfad zu finden.
Ich nehme an, ich kann die Quelle nach Ameise durchsuchen, da sie Wildcard-Syntax verwendet, aber mir muss hier etwas ziemlich Offensichtliches fehlen.
( Bearbeiten : Das obige Beispiel war nur ein Beispielfall. Ich suche nach einer Möglichkeit, allgemeine Pfade mit Platzhaltern zur Laufzeit zu analysieren. Ich habe anhand des Vorschlags von mmyers herausgefunden, wie das geht, aber es ist irgendwie ärgerlich. Ganz zu schweigen davon Die Java-JRE scheint einfache Platzhalter in den Hauptargumenten (String []) automatisch aus einem einzigen Argument zu analysieren, um mir Zeit und Ärger zu "sparen". Ich bin nur froh, dass ich keine Argumente außerhalb der Datei in der mischen.)