Forum: PC-Programmierung ordner öffnen with fopen


von Smith (Gast)


Lesenswert?

hello all!
in einem ordner habe ich mehrere Dateien.Ich will jetzt den ordner 
öffnen und zeilenweise lesen.Ich habe mit fopen versucht aber kriege ich 
den Null wert als fopen Rückgabe.
ich habe den absoluten pfad von dem Ordner eingegeben aber immer 
dasselbe Problem.
Meine frage wie kann ich in c sprache ein ordner öffner aber bitte kein 
(datei)?
z.b:ptr=fopen("../ordner","r");
        while(NULL!=fgets(zeile,...)){
                                     }
Ich bedanke mich im voraus.
bye

von Thomas (Gast)


Lesenswert?

1
ptr=fopen("..\\ordner","r");
2
        while(NULL!=fgets(zeile,...)){
3
                                     }

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Das geht so gar nicht, da ein Ordner eben keine Datei ist. Welches 
Format sollen denn die daraus gelesenen Zeilen haben?

Wenn Du Win32-basiert arbeitest, wirst Du die Win32-API-Funktion 
FindFirstFile/FindNextFile/FindClose verwenden müssen.

von Smith (Gast)


Lesenswert?

nee das hat nicht geklappt.aber wenn ich so schreibe:
fopen("..\\file.txt","r"),aber das will ich nicht ich will das ganze 
ordner aufmachen.(BS:windows)+(Microsoft cisual studio C++ 6-->Compiler)

von Thomas (Gast)


Lesenswert?

Ah, tut mir Leid. Habe überlesen, dass nur der Ordner aber keine Datei 
geöffnet werden soll...

von Chris (Gast)


Lesenswert?

Als allererstes wuerde ich nicht mehr VC++ 6 benutzen, denn diese 
Version hat schon Antik-Wert.

Wenn du auf mindestens Version 7.1 aktualisiert hast, dann kannst du 
boost installieren; boost sollte man sowieso verfuegbar haben, wenn man 
C++ programmiert. Die libraries, die boost anbietet, sind einfach 
unglaublich nuetzlich. Zum Beispiel ist auch eine library dabei, die 
genau das anbietet, was du brauchst, und das sogar noch 
plattformunabhaengig:
http://www.boost.org/libs/filesystem

Boost ist uebrigens kostenlos und fuer VC++ voellig problemlos zu 
installieren. VC++ 6 wird allerdings nicht mehr unterstuetzt, aus 
naheliegenden Gruenden.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.