Verzeichnis auslesen - Fehler in isDirectory()?

Status
Nicht offen für weitere Antworten.

mad-din

Bekanntes Mitglied
Hi Leute!

Ich hab hier ein seltsames Problem. Ich lese ein Verzeichnis aus und überprüfe, ob es sich bei der aktuellen Datei innerhalb dieses Verzeichnisses um ein weiteres Verzeichnis handelt oder nicht. Je nachdem, was es ist, werden verschiedene Aktionen ausgeführt. Hier mal das Code-Beispiel:

Code:
		File f = new File(basedir);
		
		if (f.isDirectory() == true) {
			String[] temp = f.list();
			
			for (int i = 0; i < temp.length; i++) {
				File tmpFile = new File(f.getAbsolutePath() + "\\" + temp[i]);
				
				if (tmpFile.isDirectory() == true) {
					getPDFs(f.getAbsolutePath() + "\\" + temp[i]);
					System.out.println("Verzeichnis: " + temp[i]);
				} else {
					String filename = tmpFile.getName();
					int fileLength = filename.length();
					System.out.println("Verarbeite Datei: " + filename);
					System.out.println( filename.substring(fileLength-3, fileLength) );
				}
				
			}
			
		}

So, das ganze funktioniert auch soweit. Bis es auf das Verzeichnis "IC" trifft. Die Konsole gibt aus "Verzeichnis: IC" und dann - jetzt kommts - geht es im else-Zweig weiter und schmeißt dann natürlich eine Exception. Warum? "IC" ist definitiv ein Verzeichnis, Java erkennt es ja auch als Verzeichnis, sonst würde es ja nicht "Verzeichnis: IC" ausgeben. Warum fängt es dann plötzlich an in den else-Zweig zu springen?

Bin ratlos!!

Danke und viele Grüße,
Martin

P.S.: Die variable basedir ist hier ein Pfad auf eine Netzwerkresource, also eine schlichten freigegeben Ordner im Netzwerk.
 
S

SlaterB

Gast
Scherzkeks,
so wirds nicht sein, vertraue der Macht von Java ;)


gehe einfach ganz sicher mit:

Code:
public static int count = 0;





         for (int i = 0; i < temp.length; i++) { 
            File tmpFile = new File(f.getAbsolutePath() + "\\" + temp[i]); 

            System.out.println(count+": bearbeite File "+tmpFile.getName()); 
            count++;
            if (tmpFile.isDirectory() == true) { 
               System.out.println(count+": bearbeite File "+tmpFile.getName()+", directory"); 
               count++;

               getPDFs(f.getAbsolutePath() + "\\" + temp[i]); 
               System.out.println("Verzeichnis: " + temp[i]); 
            } else { 
               System.out.println(count+": bearbeite File "+tmpFile.getName()+", else-Fall"); 
               count++;

               String filename = tmpFile.getName(); 
               int fileLength = filename.length(); 
               System.out.println("Verarbeite Datei: " + filename); 
               System.out.println( filename.substring(fileLength-3, fileLength) ); 
            } 
             
         }
siehe da, du wirst nie println-Ausgaben erhalten, die direkt von 'Directory' nach 'else-Fall' gehen,
sondern irgendwas passiert dazwischen,


-----

allgemeiner Tipp:
statt
if (tmpFile.isDirectory() == true) {
schreibe
if (tmpFile.isDirectory()) {
 

mad-din

Bekanntes Mitglied
Hi!

Ja, jetzt vertraue ich der Macht von Java wieder. Folgendes war: Es gab in diesem Basisverzeichnis einen versteckten Ordner .rsrc, in dem eine Datei namens "IC" vorhanden war. Also war es durchaus richtig....

Aber jetzt hätt ich gleich ne andere Frage: wie kann ich am effektivsten die Dateiendung herausbekommen?

Danke & viele Grüße,
Martin
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Verzeichnis aus meinem JAR auslesen und abspeichern. Allgemeine Java-Themen 2
S Verzeichnis schreibzugriffe erlaubt unabhängig von ACL und Posix Allgemeine Java-Themen 11
T Geeignetes Verzeichnis Allgemeine Java-Themen 5
P Wofür ist das Verzeichnis $HOME/.oracle_jre_usage? Allgemeine Java-Themen 3
M Dateien aus einem Verzeichnis auf einem Server auflisten Allgemeine Java-Themen 5
K NetBeans Ordner bei 'Clean&Build' automatisch in dist Verzeichnis kopieren Allgemeine Java-Themen 0
C Verzeichnis ins JMenu einlesen Allgemeine Java-Themen 2
A Class Datei aus Verzeichnis über URLClassLoader laden Allgemeine Java-Themen 2
C Umgebungsvariable Java-Datei in anderem Verzeichnis ausführen Allgemeine Java-Themen 2
K [Refactoring] ClassLoader Verzeichnis durchsuchen lassen Allgemeine Java-Themen 7
R Welches User-Verzeichnis wählen für Configurationsdateien - Windows Allgemeine Java-Themen 2
R Änderungen in einem Verzeichnis beobachten - Windows Allgemeine Java-Themen 3
S Aus executable jar Verzeichnis erstellen Allgemeine Java-Themen 8
reibi Leeres Verzeichnis in ein Zipfile einfügen Allgemeine Java-Themen 12
reibi Schreibrechte auf ein Verzeichnis Allgemeine Java-Themen 3
G Log4J Verzeichnis der Log-Datei konfigurieren Allgemeine Java-Themen 8
A Drucken ändert aktuelles Verzeichnis Allgemeine Java-Themen 2
reibi Aktuelles Verzeichnis in den Klassenpfad nehmen Allgemeine Java-Themen 9
T Eclipse Dateien einzeln aus einem Verzeichnis laden! Allgemeine Java-Themen 6
B ObjectOutputStream verzeichnis wählen Allgemeine Java-Themen 8
Benji0815 Verzeichnis wie im Windows Explorer in einem JTree anzeigen Allgemeine Java-Themen 6
L Applet Verzeichnis lesen Allgemeine Java-Themen 3
B Verzeichnis durchsuchen geschwindigkeit optimieren Allgemeine Java-Themen 6
B in welchem verzeichnis liegen alle installierten klassen? Allgemeine Java-Themen 6
G Klassen aus Verzeichnis laden Allgemeine Java-Themen 13
S Aktuelles Verzeichnis - CMD/Kommandozeilenproblem Allgemeine Java-Themen 9
G Zwischen Datei und Verzeichnis unterscheiden. Allgemeine Java-Themen 11
C Velocity liest template-Dateien nicht aus einem Verzeichnis Allgemeine Java-Themen 3
heart_disease Verzeichnis-Probleme mit ZIP Allgemeine Java-Themen 4
M Verzeichnis durchlaufen und Dateien umbennen Allgemeine Java-Themen 2
P Verzeichnis in JAR-Datei durchgehen Allgemeine Java-Themen 2
G Dateien und Verzeichnisse in einem Verzeichnis zählen Allgemeine Java-Themen 9
W Verzeichnis für Benutzerfiles Allgemeine Java-Themen 7
S Ist File ein root-Verzeichnis? Allgemeine Java-Themen 2
J Herangehensweise: FTP-Transfer von Verzeichnis Allgemeine Java-Themen 8
G Java Klasse in einem anderen Verzeichnis aufrufen Allgemeine Java-Themen 3
H mit javac Verzeichnis kompilieren Allgemeine Java-Themen 2
E Existierendes Verzeichnis nicht gefunden Allgemeine Java-Themen 4
F Verzeichnis, in dem sich die ausführende jar Datei befindet Allgemeine Java-Themen 9
K Verzeichnis rekursiv aus JAR-Datei extrahieren Allgemeine Java-Themen 6
O Ein Verzeichnis aus der Root ablesen/Dateitypen registrieren Allgemeine Java-Themen 5
P Verzeichnis auwählen Allgemeine Java-Themen 2
S Starten einer Anwendung von einem anderen Verzeichnis Allgemeine Java-Themen 3
P Mit getResource() ein ganzes Verzeichnis laden Allgemeine Java-Themen 5
T Verzeichnis der Klasse Allgemeine Java-Themen 7
G Verzeichnis löschen? Allgemeine Java-Themen 3
W Aktuelles Verzeichnis rausfinden Allgemeine Java-Themen 13
S Probleme mit dem Compilieren von Dateien in Verzeichnis Allgemeine Java-Themen 4
G Dateien zählen im Verzeichnis Allgemeine Java-Themen 11
G aktuelles Verzeichnis Allgemeine Java-Themen 2
A Verzeichnis auflisten - auch innerhalb eines Jars Allgemeine Java-Themen 6
G Verzeichnis überwachen Allgemeine Java-Themen 13
S Temporäres Verzeichnis anlegen? Allgemeine Java-Themen 4
G Java Runtime Verzeichnis ermitteln Allgemeine Java-Themen 3
S dringend-verzeichnis von festplatte einlesen Allgemeine Java-Themen 9
P Dateinamen testen? Schreibrechte auf Verzeichnis testen? Allgemeine Java-Themen 8
M Verzeichnis verschieben? Allgemeine Java-Themen 2
G Bestimmte Dateien aus Verzeichnis löschen Allgemeine Java-Themen 5
S Programm starten mit Runtime aktuelles Verzeichnis wechseln Allgemeine Java-Themen 7
L Input/Output Email mit großer Pdf Anhang auslesen? Allgemeine Java-Themen 6
Ernesto95 HTTP Mit JavaScript erzeugte dynamische Webseite auslesen und nach einem Schlüsselwort durchsuchen Allgemeine Java-Themen 6
K Bildschirm auslesen/ Text erkennen Allgemeine Java-Themen 5
torresbig Url nach Webseiten-Login auslesen & Daten an Webseite senden Allgemeine Java-Themen 9
S .exe Datei/Programm auslesen? Allgemeine Java-Themen 2
T INI - Einträge auslesen Allgemeine Java-Themen 6
H Auslesen eines (LDAP-)Attributs in Active Directory Allgemeine Java-Themen 2
O PDF auslesen und verändern, was ist besser iText oder PDFBox ? Allgemeine Java-Themen 9
Robertop Status von Caps- und NumLock auslesen Allgemeine Java-Themen 1
Master3000 Java Konsole über Buffered Reader Zeilenweise auslesen ? Allgemeine Java-Themen 26
G Mac Package auslesen Allgemeine Java-Themen 17
W Versionsnummer auslesen - Regex ist zickig Allgemeine Java-Themen 2
F Junit Test + Cucumber - JSON auslesen und in einem weiteren Schritt nutzen Allgemeine Java-Themen 0
M verschiedene Dokumente auslesen Allgemeine Java-Themen 1
Gaudimagspam CSV-Datei auslesen in Java Allgemeine Java-Themen 7
L Dateien richtig auslesen Allgemeine Java-Themen 6
F WireGuard Status auslesen Allgemeine Java-Themen 3
B .txt Datei erstellen und auslesen bzw. schreiben Allgemeine Java-Themen 6
I DOM-Parser - Element im Element an bestimmten Stellen auslesen Allgemeine Java-Themen 1
N Txt Datei auslesen. Allgemeine Java-Themen 5
O xlsx Datei auslesen mit POI Apache liest keine LEERZELLEN Allgemeine Java-Themen 6
O xlsx Datei auslesen mit POI von Apache wirft seltsamen Fehler. Allgemeine Java-Themen 11
J Information von getSource() Objekt auslesen Allgemeine Java-Themen 1
V EMail, Attachments auslesen von einer Email Allgemeine Java-Themen 0
K Aus String zwei Jahreszahlen auslesen Allgemeine Java-Themen 18
E CSV mit Text und Binärdaten auslesen Allgemeine Java-Themen 7
x46 Webseite in Java auslesen Allgemeine Java-Themen 2
M Html Seite auslesen Allgemeine Java-Themen 16
S Hilfe bei dem Auslesen einer YAML Datei Allgemeine Java-Themen 8
J Fenstergröße eines anderen Programmes auslesen Allgemeine Java-Themen 9
B Cookie auslesen Allgemeine Java-Themen 3
B Input/Output Programm zum Auslesen/Beschreiben von Textdateien, wie Geschwindigkeit erhöhen? Allgemeine Java-Themen 18
J Variablen Mehrere int-variablen in txt abspeichern und danach wieder auslesen Allgemeine Java-Themen 1
J Daten aus Website-Quelltext auslesen Allgemeine Java-Themen 62
J Teil einer URL auslesen Allgemeine Java-Themen 13
denny86 NetBeans Ordnernamen rekursiv auslesen und in Variable verarbeiten Allgemeine Java-Themen 38
C Atfx mit Hilfe von OpenAtfx auslesen Allgemeine Java-Themen 1
C Position von Pixeln in Bilder auslesen Allgemeine Java-Themen 2
M aktive WLAN Teilnehmer auslesen? Allgemeine Java-Themen 6
X JSONObject auslesen und in HashMap hinterlegen Allgemeine Java-Themen 16
S Kann man mit Java auf einem lokalen PC/Mac Benutzergruppen auslesen und Rechte ändern? Allgemeine Java-Themen 11

Ähnliche Java Themen

Neue Themen


Oben