Gibt es eine Möglichkeit, die Tiefe einer rekursiven Dateiauflistung in Java zu begrenzen? Ich verwende FileUtils.listFiles (Dateiverzeichnis, String [] Erweiterungen, boolean rekursiv) von Apache commons-io, um Dateien eines angegebenen Verzeichnisses aufzulisten, aber diese API gibt alle Elemente dieses Verzeichnisses zurück.Wie kann die Tiefe einer rekursiven Dateiauflistung in JAVA begrenzt werden?
1
A
Antwort
0
Eine einfache Google fanden diese
/**
* Construct an instance with a directory and a file filter and an optional
* limit on the <i>depth</i> navigated to.
* <p>
* The filters control which files and directories will be navigated to as part
* of the walk. This constructor uses {@link FileFilterUtils#makeDirectoryOnly(IOFileFilter)}
* and {@link FileFilterUtils#makeFileOnly(IOFileFilter)} internally to combine the filters.
* A <code>null</code> filter means that no filtering should occur.
*
* @param directoryFilter the filter to apply to directories, null means visit all directories
* @param fileFilter the filter to apply to files, null means visit all files
* @param depthLimit controls how <i>deep</i> the hierarchy is
* navigated to (less than 0 means unlimited)
*/
protected DirectoryWalker(IOFileFilter directoryFilter, IOFileFilter fileFilter, int depthLimit) {
if (directoryFilter == null && fileFilter == null) {
this.filter = null;
} else {
directoryFilter = (directoryFilter != null ? directoryFilter : TrueFileFilter.TRUE);
fileFilter = (fileFilter != null ? fileFilter : TrueFileFilter.TRUE);
directoryFilter = FileFilterUtils.makeDirectoryOnly(directoryFilter);
fileFilter = FileFilterUtils.makeFileOnly(fileFilter);
this.filter = FileFilterUtils.or(directoryFilter, fileFilter);
}
this.depthLimit = depthLimit;
}
Also denke ich, dass Sie die depthLimit Variable setzen müssen,
Verwandte Themen
- 1. Dozer: Wie kann die Tiefe von Zuordnungen begrenzt werden?
- 2. Wie man die Tiefe einer rekursiven Unterverzeichnis Suche eingrenzt
- 3. Wie kann ich die Tiefe einer rekursiven Funktion in C++ finden
- 4. Wie kann die Anzahl der Ausgabezeilen in einer bestimmten Zelle des Ipython-Notebooks begrenzt werden?
- 5. Wie kann die Abfragezeit in elasticsearch begrenzt werden?
- 6. Wie begrenzt man OneToMany/ManyToOne Assoziationen Tiefe/Schleife in Doctrine2?
- 7. Rückgabewert in einer rekursiven Funktion JAVA
- 8. Wie kann die Größe jeder Gruppe in SQL begrenzt werden?
- 9. Wie werden die Rückgabeergebnisse in einer rekursiven Funktion berechnet?
- 10. curl: Wie kann die Größe von GET begrenzt werden?
- 11. Wie kann die maximale Breite von UILabel begrenzt werden?
- 12. JTextField: Wie kann die Anzahl der Zeichen begrenzt werden?
- 13. Wie kann die Anzahl der Uploads vom Benutzer begrenzt werden?
- 14. Wie kann die DownloadString (URL) um 500 Millisekunden begrenzt werden?
- 15. Wie kann die Dateigröße beim Hochladen mit Multer begrenzt werden?
- 16. Wie kann die Generierung von Zufallszahlen auf 12 begrenzt werden?
- 17. Wie kann die Android-CPU-Nutzung begrenzt werden?
- 18. Wie kann die Anzahl der Zeilen und Zeichen pro Zeile in einer TMemo-Komponente begrenzt werden
- 19. Wie kann die Geschwindigkeit mit BMW JSDK auf 116i programmgesteuert von Java begrenzt werden?
- 20. Wie kann ich die Tiefe einer JPG-Datei erhalten?
- 21. Wie kann die Menge der Daten begrenzt werden, die vom Kunden über Websocket gesendet werden?
- 22. Doctrine2 - Wie kann @ OneToMany Mapping-Größe begrenzt werden?
- 23. Wie kann die Bandbreite begrenzt und mehrere Downloads beim Herunterladen einer Datei zugelassen werden?
- 24. Wie kann die Anzahl der Zeichen begrenzt werden, die ein Benutzer eingeben kann?
- 25. Wie kann die Länge der Eigenschaften in Logs in WSO2 ESB begrenzt werden?
- 26. Wie ist die Anzahl der Ansichten begrenzt?
- 27. Wie kann das Instanzenlaichen (Autoscaling) auf GAE begrenzt werden?
- 28. Wie kann der Durchsatz mit RabbitMQ begrenzt werden?
- 29. In Django Rest Framework, wie die Anzahl der Fremdschlüsselobjekte begrenzt werden, die serialisiert werden
- 30. RailsAdmin, wie Listendatensätze nach Bedingungen begrenzt werden?
Verwenden [Files.walk()] (https://docs.oracle.com/javase/8/docs/api/java/nio/file/Files.html#walk-java.nio.file.Path-int-java.nio.file.FileVisitOption...-) – saka1029