2017-03-28 4 views
-1

Die typischen Dateilisten sind in Ordnung.File.listFiles listet nur Dateien mit Punkterweiterung auf

meinedatei.txt

kehrt wie erwartet.

Meinedat

ohne Erweiterung nicht wieder ein Dateiobjekt.

Windows 7, Java JDK6 -.. Die Aktualisierung ist keine Option :(

Interessantererweiterungs Dateien werden nicht als Verzeichnisse bis entweder

File dir = new File("c:/somedirectory/"); 
File[] returnFiles = dir.listFiles(); 

Added Code wie gewünscht erwarten Sie 2 Dateien in Array und sich ein.

+0

teilen Sie Ihren Code – Omore

+0

Erfahren Sie mehr darüber "ohne eine Erweiterung gibt kein Dateiobjekt zurück." Wo versuchst du, einen Dateinamen ohne Erweiterung einzugeben? – Omore

+1

Wenn Sie 'neue Datei versuchen (" c:/somedirectory/"," myfile ");', existiert diese Datei? Haben Sie sowohl 'myfile.txt' als auch' myfile' im Verzeichnis? – Obicere

Antwort

0

ich nahm die Referenz der Java 6 Dokumentation (https://docs.oracle.com/javase/6/docs/api/java/io/File.html). Es gibt nicht viele Änderungen für die Klasse Datei von Java 6 Java 8.

Also habe ich ein kleines Beispiel Code mit Java 7 und Java 8 unter Unix ausgeführt.

Meine Beobachtung ist, dass die erste Schleife alle Dateien einschließlich der versteckten Dateien zusammen mit normalen Dateien und erweiterungsfreie Dateien zurückgegeben. Während der zweite Label/Namen aller Dateien und Verzeichnisse zurückgab.

Also nehme ich an, dass die Datei ohne Erweiterung aus irgendeinem Grund als Verzeichnis statt als Datei angesehen wurde.

Verwandte Themen