Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Mal ne typische Anfängerfrage glaube ich :wink: Und zwar möchte ich ein Verzeichnis durchsuchen und gleichzeitig alle Datein mit der Endung *.img in ein Array aufnimmt. Das Durchsuchen aller Dateien klappt soweit, nur geht folgende Zeile nicht if (files.endsWith(".img") == true), die jetzt alle im Array aufgenommenen Datein auf die Endung hin prüft. Ich bekomme die Fehlermeldung "The method endsWith(String) is undefined for the type Files". Wenn ich das richtig interpretiere, dann gibt es halt keine Methode in der Klasse "File".
Was mache ich hier falsch bzw. wie macht man das anders???
Danke
Reen
Code:
class aktPFAD {
public void listDir()
{ String pfad_r;
pfad_r = System.getProperty("user.dir");
File f = new File(pfad_r);
File files[] = f.listFiles();
try {
if ( files != null)
{ for ( int i=0; i<=files.length-1; i++ )
{ System.out.println(files[i]);
if (files[i].endsWith(".img") == true)
{}
}
}
}
catch (ArrayIndexOutOfBoundsException e)
{ System.out.println("Fehler"); }
}
// public static boolean isimg (String suffix)
// {
// return ;
// }
}
endsWith() ist eine Methode der Klasse String. getName(), die eine Methode der Klasse File ist, liefert ein String-Objekt (nämlich den Namen) zurück. Auf diesem Objekt kann man nun die Methoden der Klasse String aufrufen.
Man hätte auch schreiben können:
Code:
File f = new File("xyz.img");
String name = f.getName();
if(name.endsWith(".img")) {
// Mach was tolles
}
aber getName() ist doch auch nur eine Methode im File Object. In welchen Zusammenhang bzw. über welchen Weg hängt die endsWith() Methode mit getName() zusammen? Ich schaue mir auch gerade das http://www.dpunkt.de/java/Referenz/Das_Paket_java.io/17.html#getName() dazu an.
Sry für die wo möglich komisch klingenden Fragen, aber dazu ist ja das Forum da.
file ist File-Objekt, also kannst du darauf die File-Methode getName() ausführen und erhältst dann ein String-Objekt. Auf dieses kannst du dann die String-Methode endsWith() ausführen.
Du musst das folgendermaßen lesen:
file.getName().endsWith() =
(file.getName()).endsWith() =
(--StringObjekt--).endsWith()