Hallo,
Stellt sich die Frage, was mache ich falsch?
Hast Du schon einmal die von readdir() zurückgegebene Liste genauer angesehen? Ich denke nicht, denn dann hättest Du festgestellt, dass es sich lediglch um die Dateinamen handelt, ohne der für die weitere Verarbeituing notwendigen Pfadangabe.
Du solltest also vor der Verzeichnisprüfung den Dateinamen und das gegebene Verzeichnis zu einem vollständigen Dateinamen zusammenbasteln, damit auch die richtige Datei angesprochen wird.
BTW: für . und .. solltest Du Dir auch etwas spezielles einfallen lassen.
Grüße
Klaus