DateiSuche - Aufbau der SuFu

subn0de

Mitglied
Hallo,

ich brauche eine flexible Suchfunktion für Dateien. Die Frage ist, wie ich das am besten realisiere, ich habe gerade die org.apache.commons.io gefunden, welche einige Filterfunktionen mitbringt. Diese zu verknüpfen ist aber ein wenig umständlich: per AndFileFilter kann man 2 weitere Filter hinzufügen. Da ich aber nicht alle Werte mitgebe, zB nur die Mindestgrösse und das zu durchsuchende Verzeichnis, suche ich eine Möglichkeit das ganze Filtertrum erst runtime zu erstellen, hat jemand eine Idee wie man das machen könnte? Oder soll ich die Dateiliste dann von einer SuFu "minSize" zur weiteren bearbeitung an SuFu"maxSize" schicken etc?

Java:
import org.apache.commons.io.FileUtils;

public static void searchFiles(File root, 
                                                    String[] contains,    
                                                    Long sizeMin, 
                                                    Long sizeMax, 
                                                    String[] suffix, 
                                                    String[] prefix,
                                                    String[] containsNot, 
                                                    Boolean hidden, 
                                                    Boolean recursive) 
    {
        
        WildcardFileFilter containsFilter=new WildcardFileFilter(contains);
        WildcardFileFilter containsNotFilter = new WildcardFileFilter(containsNot);
        SizeFileFilter sizeMinFilter = new SizeFileFilter(sizeMin);
        SizeFileFilter sizeMaxFilter = new SizeFileFilter(sizeMax);
        SuffixFileFilter  extensionFilter = new SuffixFileFilter(suffix);
        HiddenFileFilter hiddenFilter =null;
        
        try {
            Collection files = FileUtils.listFiles(root , FileFilterUtils.andFileFilter(
                    FileFilterUtils.andFileFilter(
                            containsFilter, containsNotFilter), FileFilterUtils.andFileFilter(
                                    sizeMinFilter,FileFilterUtils.andFileFilter(
                                            sizeMaxFilter, extensionFilter))),
                                            TrueFileFilter.TRUE);
            
            for (Iterator iterator = files.iterator(); iterator.hasNext();) {
                File file = (File) iterator.next();
                System.out.println("File = " + file.getAbsolutePath());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
 
Zuletzt bearbeitet:
S

SlaterB

Gast
hmm, die Frage ist nicht ganz klar,
dir ist selber aufgefallen dass man Filter beliebig kombinieren kann, also entweder macht das der Aufrufer und übergibt den richtigen Filter als Parameter oder du übergibst wie aktuell viele Werte, von denen dann nicht alle gesetzt sind,
dann musst du dir jeweils ignorieren-Werte überlegen (für size z.B. negative Zahlen, -1, Objekte null) und if/else einbauen,
gehts darum? ist doch relativ normales bekanntes Programmieren
 

subn0de

Mitglied
Sorry, habe
Code:
AndFileFilter.setFileFilters(java.util.List<IOFileFilter> fileFilters)
ganz übersehen :oops:
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Input/Output Dateisuche mit NIO Java Basics - Anfänger-Themen 10
M Einstellungen für Dateisuche Java Basics - Anfänger-Themen 4
S JDialog während automatischer Dateisuche einblenden Java Basics - Anfänger-Themen 6
G Dateisuche in Linux Java Basics - Anfänger-Themen 8
A Rekursive Dateisuche Java Basics - Anfänger-Themen 12
S Mein erstes eigenes Projekt - Aufbau und Strukturierung Java Basics - Anfänger-Themen 6
B fragen zu Aufbau eines UML-Klassendiagramm Java Basics - Anfänger-Themen 1
L Best Practice Code Refactoring für Methoden mit fast gleicher Aufbau Java Basics - Anfänger-Themen 6
1 Erste Schritte Aufbau Java Basics - Anfänger-Themen 7
D regex Aufbau Frage Java Basics - Anfänger-Themen 4
R Theoretischer aufbau einer Messenger App? Java Basics - Anfänger-Themen 10
U Erste Schritte Aufbau eines kleinen Matrizen-Programms(MVC; OOP) Java Basics - Anfänger-Themen 20
R Erste Schritte Grundsätzlicher Aufbau Java Basics - Anfänger-Themen 127
T Java Projekt aufbau Java Basics - Anfänger-Themen 5
D Best Practice String aufbau - Char Array oder Anhängen Java Basics - Anfänger-Themen 11
A System.out.println() - Aufbau Java Basics - Anfänger-Themen 1
T System.out.print : Frage zu Aufbau Java Basics - Anfänger-Themen 4
T Verständnisfragen zum Aufbau Java Basics - Anfänger-Themen 6
P Systematischer Aufbau einer Klasse Java Basics - Anfänger-Themen 6
M Aufbau der Klassenbibliothek und Referenzvariable Java Basics - Anfänger-Themen 5
D Klassen Aufbau Kartenspiel Java Basics - Anfänger-Themen 20
A Jtree Aufbau Java Basics - Anfänger-Themen 5
T Desktop Anwendung Aufbau Java Basics - Anfänger-Themen 5
7 Interfaces - Aufbau Java Basics - Anfänger-Themen 9
G Aufbau MVC-Pattern Java Basics - Anfänger-Themen 6
G Aufbau Paketstruktur Java Basics - Anfänger-Themen 3
J Tutorials oder Sourcen über den Aufbau kleinerer Apps Java Basics - Anfänger-Themen 2
B Klasse nach Aufbau und Struktur checken? Java Basics - Anfänger-Themen 15
B Aufbau eines Programms Java Basics - Anfänger-Themen 10
J Aufbau von Klassen und zugriff auf alle Variablen Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben