Форум программистов, компьютерный форум CyberForum.ru

Как собрать файлы в директории? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Зачем придумали istreambuf/ostreambuf? http://www.cyberforum.ru/cpp/thread1091506.html
Уважаемые форумчане, мне очень хочется понять для каких целей создали istreambuf_iterator и ostreambuf_iterator. Все, что делает istreambuf_iterator - достает, посимвольно, элементы из буфера ввода. Все, что делает ostreambuf_iterator - выводит, посимвольно, элементы. Единственное применение для этого (которое я представляю себе) это копирование из одного файла в другой всех элементов. ...
C++ Эмулятор: C + WinAPI Здравствуйте уважаемые читатели форума! У меня такой вопрос: (СРАЗУ ПРЕДУПРЕЖДАЮ Я НЕ ОЧЕНЬ ХОРОШО РАЗБИРАЮСЬ ПОКА В ЭТОМ ТАК ЧТО ОЧЕНЬ МНОГОЕ ИЗ МОИХ СЛОВ МОЖЕТ БЫТЬ ЖУТКИМ "БЫДЛЯКОМ"....) В качестве зачетного задания преподаватель задал написать эмулятор процессора, (ну вначале придумать архитектуру, и написать эмулятор этого). Шаблон он дал, там был примитивный ассемблер, написанный на... http://www.cyberforum.ru/cpp/thread1091432.html
VS 2008 и Matlab C++
Люди умные, помогите, не понимаю. Создаю проект, в свойствах указываю "Дополнительные каталоги библиотек" папки "D:\Programs\MATLAB\R2012a\extern\lib\win32\microsoft; D:\Programs\MATLAB\R2012a\extern\lib\win64\microsoft" в "Дополнительные каталоги включения" пишу "D:\Programs\MATLAB\R2012a\extern\include" При компиляции получаю "error LNK2001: неразрешенный внешний символ "_mexPrintf"" Может...
C++ Зачем очищать поток cout?
Всем привет! Не могу понять, зачем очищать поток cout после вывода? Все, что выудил из гугла, что вроде как поток сохраняет в себе все, что выводил и может не хватить памяти... Фигня какая-то... Не?
C++ Написать функцию, которая напечатает битовое представление значения заданного типа – enum http://www.cyberforum.ru/cpp/thread1089251.html
Здравствуйте, помогите пожалуйста с типом данных enum,требуется написать функцию, которая напечатает битовое представление значения заданного типа – enum, никак не могу понять как в биты перевести(((
C++ Функторы, предикаты, функциональные адаптеры, лямбда-функции Вступление Статья ориентирована на программистов С++, поверхностно знающих/желающих узнать STL, в особенности, с использованием его алгоритмов. Это краткий обзор по основным понятиям, в конце будет приведен список литературы для более полного ознакомления с материалом. Часто, алгоритмы STL имеют перегруженную версию или схожую по функционалу с добавлением в названии _if в конце,... подробнее

Показать сообщение отдельно
DiffEreD
 Аватар для DiffEreD
1425 / 762 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
08.02.2014, 00:32     Как собрать файлы в директории?
Будет ли работать с Builder не знаю, но подобные задачи я решаю с помощью boost::filesystem :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include <iostream>
#include <iterator>
#include <string>
#include <algorithm>
#include <vector>
#include <windows.h>
#include <boost/filesystem.hpp>
 
namespace fs = boost::filesystem;
 
std::vector<fs::path> getFiles( const std::string& directoryName)
{
   std::vector<fs::path> res;
   for ( fs::directory_iterator it(directoryName), end; it != end; ++it)
   {
      try
      {
         if ( fs::is_regular_file(*it ) )
            res.push_back(*it);
         else if (fs::is_directory(*it) && !fs::is_symlink(*it) )
         {
            const std::vector<fs::path>& subDirectory = getFiles( it->path().generic_string() );
            std::copy(subDirectory.begin(), subDirectory.end(), std::back_inserter(res) );
         }
      }
      catch(const fs::filesystem_error& ex) {
      }
   }
   return res;
}
 
int main()
{
   SetConsoleCP (1251); SetConsoleOutputCP (1251);
 
   std::cout << "Enter directory: -> ";
   std::string dir;
   std::cin >> dir;
 
   std::vector<fs::path> files = getFiles(dir);
 
   files.erase(std::remove_if(files.begin(), files.end(), [](const fs::path p)
   {
      const std::string extension = p.extension().generic_string();
      return extension != ".mp3" && extension != ".wav";
   }), files.end());
 
   std::cout << "Your music files:\n\n";
   for (auto file : files) std::cout << file.filename().generic_string() << "\n";
 
   return 0;
}
 
Текущее время: 00:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru