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

Запись путей файлов в *.txt файл. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ помогите, если не сложно http://www.cyberforum.ru/cpp-beginners/thread360301.html
помогите написать программу для курсового проекта
C++ Преимущество Win Api Буквально вчера создал тему, где задал вопрос о средствах, с помощью которых можно работать некоторым образом в командной строке. Нашлось много ответов, и часть из них сводилась к совету использовать средства Win Api. И, собственно, теперь сам вопрос: На сколько это перспективно (если можно так сказать), и почему лучше начать работать именно с Win Api, а не, скажем, выучить библиотеку QT и... http://www.cyberforum.ru/cpp-beginners/thread360251.html
Посоветуйте среду C++
Посоветуйте интегрированную среду разработки кросплатформенных приложений. Сама среда должна иметь виндузячую версию, поддерживать использование в разрабатываемом приложении сторонних библиотек, требуется сборка готового приложения под винду, и под LINUX.
C++ Как сделать генератор случайных чисел?
Привет всем. Возник очередной вопрос за это утро. Как сделать генератор случайных чисел? В учебнике написано так: "Для этого существует функция random(K) - генератор случайных чисел." Учебник предлагает вначале написать так: randomize(); //Инициализация генератора случайных чисел А потом уже использовать функцию random(K); И дескать это будет целое число в интервале
C++ Чтение из файла http://www.cyberforum.ru/cpp-beginners/thread360242.html
формат файла: text, 200 text2, 180 и т.д.... #include <math.h> #include <stdio.h> struct cars {
C++ Слово array является зарезервированным в Visual Studio 2008? Привет всем. Читаю старую книгу по С++. Там для массива предлагают использовать имя array, например: int array; Но когда я это напечатал, то у меня слово array стало синим: array Как я понимаю, синими являются зарезервированные слова. Но, судя по учебнику, слово array таковым не является. Там в начале приведён полный список ключевых слов С++ и в этом списке array нет. Но книга старая.... подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
05.10.2011, 10:49     Запись путей файлов в *.txt файл.
Цитата Сообщение от Deviaphan Посмотреть сообщение
Чтобы было "по заданию", добавь рекурсивный вызов для папок. Файлы из подпапок тоже выводить надо.
- логичное замечание, с учётом этого
long GetFileList(const char * sPath, FILE * f, BOOL bSaveDirs) примет вид ниже
GetFileList с рекурсией
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
long GetFileList(const char * sPath, FILE * f, BOOL bSaveDirs)
{
    long nFiles = 0;
    char sDIR[MAX_PATH];
    WIN32_FIND_DATA pDATA;
    strcat(strcpy(pDATA.cFileName,sPath),"\\*.*");
    HANDLE hFile = FindFirstFile(pDATA.cFileName,&pDATA);
    if(hFile != INVALID_HANDLE_VALUE)
    {
        do
        {
            //Пропускаем Путь\. и Путь\..
            if(strcmp(pDATA.cFileName,".")  == 0 ||
               strcmp(pDATA.cFileName,"..") == 0)
               continue;
            else
            {
                //Встретили не папку (передаём её полный путь в поток f)
                if(pDATA.dwFileAttributes != FILE_ATTRIBUTE_DIRECTORY)
                    fprintf(f,"%s\\%s\r\n",sPath,pDATA.cFileName);
                else//При bSaveDirs == TRUE 
                    //в файл запишем и названия папок
                    //это как опция програмы;)
                {
                    sprintf(sDIR,"%s\\%s",sPath,pDATA.cFileName);
                    if(bSaveDirs)
                        fprintf(f,"%s\\%s\r\n",sPath,pDATA.cFileName);
                    GetFileList(sDIR, f, bSaveDirs);
                }
                nFiles++;//Это так чтобы видеть было ли что то в каталоге или нет
            }
        }
        while(FindNextFile(hFile,&pDATA));
    }
    return nFiles;
}


Добавлено через 1 минуту
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
if(bSaveDirs)
* * * * * * * * * * * * * * * * * * * * * * * * fprintf(f,"%s\\%s\r\n",sPath,pDATA.cFileName);
* * * * * * * * * * * * * * * * * * * * GetFileList(sDIR, f, bSaveDirs);
- рекурсивный вызов

Добавлено через 2 минуты
Результат работы для папки программы
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\Debug\FILESEnum.exe
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\Debug\FILESEnum.ilk
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\Debug\FILESEnum.obj
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\Debug\FILESEnum.pch
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\Debug\FILESEnum.pdb
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\Debug\tree.txt
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\Debug\vc60.idb
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\Debug\vc60.pdb
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\FILESEnum.cpp
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\FILESEnum.dsp
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\FILESEnum.dsw
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\FILESEnum.exe
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\FILESEnum.ncb
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\FILESEnum.opt
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\FILESEnum.plg
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\Release\FILESEnum.exe
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\Release\FILESEnum.obj
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\Release\FILESEnum.pch
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\Release\vc60.idb
D:\Мои документы\ЮрА\Личное\PROJECTS\FILESEnum\tree.txt
 
Текущее время: 03:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru