ディレクトリ内のすべてのファイルに対して繰り返し処理を行い、その内容を出力します。 Boostは反復部分を非常にうまく処理しますが、私はconst char *
にそれをどのように変換するのか分かりません。boost :: filesystem :: directory_iteratorをconst charに変換する方法*
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);
}
私はこのdocumentationを読み取ろうとしましたが、string
またはc_str()
ようなものを見つけることができませんでした。私はC++
とboost
の両方に新しく、ソースコードをダンプするのではなく、メンバーが何であり、どのような機能が利用できるのかを基本的に教えるドキュメンテーションのようなものを見つけることを望んでいました。
おっとり申し訳ありませんが、*path_it
をc string
に変換する方法を教えてもらえますか?
それは[directory_entry](http://www.boost.org/doc/libs/1_53_0/libs/filesystem/doc/referenceにあります。 html#Class-directory_entry)。 –
ありがとう、これからそれを考え出した。どのように私は少し苦痛な方法で後押しを学ぶことができるかについてのヒント? – nikhil
私はあなたの最善の策は単体テストを試してみることだと思います。または、自分自身で書き出して物事を説明してください。 –