Hallo
Vorweg ich befinde mich auf einem Ubuntu gerät (virtuelle maschine).
Ich habe folgendes problem. Ich möchte mit einer Rekursiven Methode alle datein finden und ausgeben.
Es ist mir aber völlig unklar warum manche ordner durchsucht werden und manche nicht. (betrifft auch datein)
Die Methode ist soweit eigentlich fertig. Ich habe mich im internet bisl schlau gemacht :rtfm:, aber eigentlich arbeitet meine
Methode genau so wie die anderen auch.
Quellcode folgt weiter unten. Bitte nicht verwirrt sein wegen den Patterns. Diese werden bei meiner ausgabe NOCH
nicht berügsichtigt, weil ich ein System.out.println hineingebastelt hat welche ALLE gefunden datein ausgibt.
Meine große frage ist warum das Programm nicht alle datein findet. Vorallem mit den unterodnern hat er ein Problem.
Ausgabe:
/home/sebastian/ProgrammierenWorkspace/classFinder/.hg
/home/sebastian/ProgrammierenWorkspace/classFinder/.hg/store
/home/sebastian/ProgrammierenWorkspace/classFinder/.hg/requires
/home/sebastian/ProgrammierenWorkspace/classFinder/.hg/dirstate
/home/sebastian/ProgrammierenWorkspace/classFinder/.hg/00changelog.i
/home/sebastian/ProgrammierenWorkspace/classFinder/.settings
/home/sebastian/ProgrammierenWorkspace/classFinder/src
/home/sebastian/ProgrammierenWorkspace/classFinder/src/classFinder
/home/sebastian/ProgrammierenWorkspace/classFinder/src/classFinder/ClassFinder.java
/home/sebastian/ProgrammierenWorkspace/classFinder/.project
/home/sebastian/ProgrammierenWorkspace/classFinder/hs_err_pid3535.log
/home/sebastian/ProgrammierenWorkspace/classFinder/bin
/home/sebastian/ProgrammierenWorkspace/classFinder/.classpath
/home/sebastian/ProgrammierenWorkspace/classFinder/hs_err_pid2561.log
Das sind alle gefunden datein (auch Ordner).
Ich weiß jedoch das z.B.: in dem Ordner "src" sich 2 Ordner befinden (den gefunden) classFinder und classFinder_Test
Desweiterem sollte sich in dem Ordner "src/classFinder" auch noch 2 andere Klassen zu finden sein nichtnur ClassFinder.java
Ich bedanke mich im voraus für eure antworten
Vorweg ich befinde mich auf einem Ubuntu gerät (virtuelle maschine).
Ich habe folgendes problem. Ich möchte mit einer Rekursiven Methode alle datein finden und ausgeben.
Es ist mir aber völlig unklar warum manche ordner durchsucht werden und manche nicht. (betrifft auch datein)
Die Methode ist soweit eigentlich fertig. Ich habe mich im internet bisl schlau gemacht :rtfm:, aber eigentlich arbeitet meine
Methode genau so wie die anderen auch.
Quellcode folgt weiter unten. Bitte nicht verwirrt sein wegen den Patterns. Diese werden bei meiner ausgabe NOCH
nicht berügsichtigt, weil ich ein System.out.println hineingebastelt hat welche ALLE gefunden datein ausgibt.
Meine große frage ist warum das Programm nicht alle datein findet. Vorallem mit den unterodnern hat er ein Problem.
Java:
public LinkedList<String> saveFiles(File actPath, int actCounter, Pattern realPattern,
LinkedList<String> list){
// Parameter : Dateipfad, position im array, pattern (regulärer ausdruck) (unwichtig)
File[] files = actPath.listFiles();
if (files != null) {
for (int counter = actCounter; counter < files.length; counter++) {
System.out.println(files[counter].toString());
Matcher pat = realPattern.matcher(files[counter].toString());
if (pat.matches()) {
list.add(files[counter].toString());
}
if (files[counter].isDirectory()) {
saveFiles(files[counter].getAbsoluteFile(), counter, realPattern, list);
}
}
}
return list;
}
Ausgabe:
/home/sebastian/ProgrammierenWorkspace/classFinder/.hg
/home/sebastian/ProgrammierenWorkspace/classFinder/.hg/store
/home/sebastian/ProgrammierenWorkspace/classFinder/.hg/requires
/home/sebastian/ProgrammierenWorkspace/classFinder/.hg/dirstate
/home/sebastian/ProgrammierenWorkspace/classFinder/.hg/00changelog.i
/home/sebastian/ProgrammierenWorkspace/classFinder/.settings
/home/sebastian/ProgrammierenWorkspace/classFinder/src
/home/sebastian/ProgrammierenWorkspace/classFinder/src/classFinder
/home/sebastian/ProgrammierenWorkspace/classFinder/src/classFinder/ClassFinder.java
/home/sebastian/ProgrammierenWorkspace/classFinder/.project
/home/sebastian/ProgrammierenWorkspace/classFinder/hs_err_pid3535.log
/home/sebastian/ProgrammierenWorkspace/classFinder/bin
/home/sebastian/ProgrammierenWorkspace/classFinder/.classpath
/home/sebastian/ProgrammierenWorkspace/classFinder/hs_err_pid2561.log
Das sind alle gefunden datein (auch Ordner).
Ich weiß jedoch das z.B.: in dem Ordner "src" sich 2 Ordner befinden (den gefunden) classFinder und classFinder_Test
Desweiterem sollte sich in dem Ordner "src/classFinder" auch noch 2 andere Klassen zu finden sein nichtnur ClassFinder.java
Ich bedanke mich im voraus für eure antworten