从文件集中读取

时间:2013-12-28 18:38:56

标签: c++ file

我是新手,所以请不要因为我提出简单的问题而苛刻。我的主要问题是如何使用c ++中的循环读取位于目录中的几个文件并对它们执行某些操作? 我的代码是这样的:

string corpus = "corpus.txt";

myfile.open(corpus);
if (myfile.is_open())
    while (!myfile.eof()) 
    {
        //Do something

    }//end of while


    MergeFiles(corpus,count);`

如何对一组文件而不是一个文件执行此操作。

1 个答案:

答案 0 :(得分:1)

看起来您可以执行以下操作之一:

  • 使用Windows API
  • 使用第三方代码

看起来最简单的方法是使用diren.h。在这里查看示例代码: How can I get the list of files in a directory using C or C++?

您可以使用boost libraries,更具体 - the filesystem library。这是一个功能更强大但更复杂的解决方案,需要您使用迭代器和更高级的编程方法。

建议不要使用Windows API,因为它需要了解windows的dipper,并且不会产生可移植的代码。如果您想使用它,MSDN中有一个示例。