PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : C++ und Verzeichnisse (auslesen)



panzi
19-12-2003, 01:10
Hi

Also stell ich mich so blöd an oder warum find ich nirgens eine Doku über Verzeichnisverwaltung unter C++? Und ich meine C++, nicht C oder Qt, ich will Standards! So wie die iostreams. Oder kann man mit nen fstream auch irgendwie auf Verzeichnisse zugreifen??

Hat irgendwer einen Tipp wo ich drüber Doku finde? In der ganzen STL und iostream Klassenhierachie gibt's keine Klasse mit directory, dir oder folder im Namen!!

Wofür ich's kongret brauch:
Inhalt eines Ordners auslesen (kann "." oder irgend ein bestimmter sein).
Ermittlen ob der Eintrag eine reguläre Datei oder ein Ordner ist. Namen (und Pfad) aller Einträge auslesen.


Wenn es TATSÄCHLICH sowas nicht gibt, gibts dafür vieleicht eine GNU C++ lib?

wraith
19-12-2003, 07:49
Original geschrieben von panzi
Also stell ich mich so blöd an oder warum find ich nirgens eine Doku über Verzeichnisverwaltung unter C++? Und ich meine C++, nicht C oder Qt, ich will Standards!

C++ und C kennen keine Verzeichnisse,ganz einfach aus dem Grund,weil es viele Embedded Systems gibt,die keine Verzeichnisse kenne.


Wenn es TATSÄCHLICH sowas nicht gibt, gibts dafür vieleicht eine GNU C++ lib?
Viel Besser,boost.
http://www.boost.org/libs/filesystem/doc/index.htm

panzi
19-12-2003, 15:33
Original geschrieben von wraith
C++ und C kennen keine Verzeichnisse,ganz einfach aus dem Grund,weil es viele Embedded Systems gibt,die keine Verzeichnisse kenne.
Wirklich? Dachte da gibts auch zumindest einen Ordner od. so. Kann ja quasi virtuell sein.

Original geschrieben von wraith
Viel Besser,boost.
http://www.boost.org/libs/filesystem/doc/index.htm
Ja davon hab ich schon gehört. (von boost, nicht das es auch für Ordner was hat). Und zwar in meinen C++ Buch von O'Reili. Muss ich mir mal genauer anschaun.

SeeksTheMoon
19-12-2003, 17:09
Verzeichnisarbeit gehört schon zur Systemprogrammierung, weil das nicht plattformübergreifend gehandhabt werden kann: andere Pfad-Trennzeichen, anderer i-node Inhalt, Rechte-Systeme, oder es gibt gar keine Verzeichnisse, wie oben angemerkt wurde.
Unter Linux läuft Systemprogrammierung in C, da führt also kein Weg dran vorbei.

panzi
23-12-2003, 16:49
@SeeksTheMoon
Ich habs jetzt aber mit boost programmiert. Die bieten ein Plattformunabhängiges Framework zur Hadhabung von Pfaden und Verzeichnis(-inhalten) an.

Und boost läuft auf allen POSIX Systemen und auch auf Windows. Aber das Programm was ich schrieb kompeliert mit MSVCPP nicht mehr, anscheinend liegt das an unzulänglichkeiten der STL von MS (in dieser Version).

Kompelier ich's mit gcc 3.3 gibt's null Probleme. :)