Ich möchte über alle Dateien in einem Verzeichnis iterieren und ihren Inhalt drucken. Boost behandelt den Iterationsteil sehr gut, aber ich habe keine Ahnung, wie man das in eine const char *
konvertieren kann.Wie man ein boost :: filesystem :: directory_iterator in ein const Zeichen umwandelt *
boost::filesystem::directory_iterator path_it(path);
boost::filesystem::directory_iterator end_it;
while(path_it != end_it){
std::cout << *path_it << std::endl;
// Convert this to a c_string
std::ifstream infile(*path_it);
}
Ich versuchte documentation dies zu lesen, aber so etwas wie string
oder c_str()
nicht finden konnte. Ich bin neu zu beiden C++
und boost
und hoffte, etwas javadoc
wie Dokumentation zu finden, die mir im Grunde sagen würde, was die Mitglieder waren und welche Funktionen verfügbar waren, anstatt den Quellcode zu kippen.
Sorry für die Rant, aber könnte mir jemand sagen, wie *path_it
in eine c string
zu konvertieren.
Es ist in [directory_entry] (http://www.boost.org/doc/libs/1_53_0/libs/filesystem/doc/reference. html # Klassenverzeichnis_eintrag). –
Danke, habe es herausgefunden. Irgendwelche Tipps, wie ich lernen kann, steigern sich auf weniger schmerzhafte Weise? – nikhil
Ich denke, deine beste Wette ist es, Unit-Tests zu versuchen. Oder schreibe sie selbst, um Dinge herauszufinden. –