Как получить все имена файлов в данном каталоге - PullRequest
0 голосов
/ 12 ноября 2009

Я хочу получить имя файла по заданному пути, есть ли доступный apis. Моя среда программирования vc ++ mfc

Ответы [ 4 ]

3 голосов
/ 12 ноября 2009

Вам следует взглянуть на FindFirstFile и FindNextFile или оболочку MFC для них, CFileFind .

2 голосов
/ 12 ноября 2009

Boost имеет отличную платформенно-независимую библиотеку файловой системы . Это будет работать с MFC.

Вот пример из их ссылки :

#include <iostream>
#include <filesystem>

using std::tr2::sys;
using std::cout;

int main(int argc, char* argv[])
{
  std::string p(argc <= 1 ? "." : argv[1]);

  if (is_directory(p))
  {
    for (directory_iterator itr(p); itr!=directory_iterator(); ++itr)
    {
      cout << itr->path().filename() << ' '; // display filename only
      if (is_regular_file(itr->status())) cout << " [" << file_size(itr->path()) << ']';
      cout << '\n';
    }
  }
  else cout << (exists(p) ? "Found: " : "Not found: ") << p << '\n';

  return 0;
}
1 голос
/ 12 ноября 2009

Вы также можете использовать MFC: CFileFind

0 голосов
/ 12 ноября 2009

Существует также CListBox :: Dir . Это очень удобно, если вы хотите заполнить список именами файлов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...