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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
tagboy
0 / 0 / 0
Регистрация: 04.01.2015
Сообщений: 44
#1

Поиск файла в указанном каталоге - C++

08.07.2015, 21:49. Просмотров 556. Ответов 7
Метки нет (Все метки)

имеется рабочий код на Visual C++ 2008, который выводит на экран список всех файлов с расширением cpp,которых он ищет в своем каталоге. Нужно сделать так, чтоб можно было указать, где искать(путь к каталогу)

C++ (Qt)
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
#include "stdafx.h"
#include "string.h"
#include "conio.h"
#include "io.h"
#include "time.h"
#include "stdlib.h"
#include "iostream"
#include "locale.h"
 
using namespace std;
 
 
 
 
#define LIM_STR 255
int _tmain(int argc, _TCHAR* argv[])
{   
    FILE *pFile;
    setlocale(LC_CTYPE, "Russian_Russia.1251");
    char szBuffer[LIM_STR];
    struct _finddata_t findData;
    intptr_t hFile;
 
    
 
    if((hFile = _findfirst("*.cpp", &findData ))
 
        ==-1L)
 
        cout<<;
 
    else
    {
        cout << "Файлы проекта" << endl << endl;
        cout<<"Имя файла:\n";
      
        do
        {
        ctime_s ( szBuffer, _countof (szBuffer),
            &findData.time_write);
        cout<<findData.name;
        cout << endl;
        } while ( _findnext ( hFile, &findData ) == 0);
        _findclose (hFile);
    }
 
    _getch();   
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.07.2015, 21:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поиск файла в указанном каталоге (C++):

Реализовать поиск в указанном каталоге всех файлов во всех поддиректориях и сформировать XML в нужном формате - C++
Задача: Искать в указанном каталоге все файлы во всех поддиректориях и формировать XML в нужном формате. XML записать в директорию...

Поиск файла в текущем каталоге - C++
Программа должна запрашивать с клавиатуры имя файла; и если он существует, выводить зелёным цветом в нижней строке экрана его размер; иначе...

сохранить файл в указанном каталоге - C++
podskazhite, pozhalujsta, kak pravilno zadat` adress, choby sohranit` ego v nuzhnom mne kataloge? prosto sozdat i sohranit fail: ...

Список файлов в указанном каталоге - C++
Использую функцию FindFirstFile: hf = FindFirstFile(L&quot;c:\\folder\\*&quot;, &amp;FindFileData); Такой вопрос: как вместо &quot;c:\\folder\\*&quot;...

Поиск файла в каталоге если нет , то создать - C++
Добрый день , облазил кучу сайтов , но не нашел ответ на вопрос ... Как создать файл если он отсутствует ? И как указать каталог для...

Код, который ищет файл с заданным именем в указанном каталоге и всех вложенных подпапках - C++
Кто может помочь?!! Напишите код, который ищет файл с заданным именем в указанном каталоге и всех вложенных подпапках. В качестве...

7
nmcf
5324 / 4644 / 1553
Регистрация: 14.04.2014
Сообщений: 18,479
08.07.2015, 22:14 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
В 26-й строке указывай нужный путь.
1
tagboy
0 / 0 / 0
Регистрация: 04.01.2015
Сообщений: 44
09.07.2015, 10:50  [ТС] #3
Пробовал указать
C++ (Qt)
1
if((hFile = _findfirst("*.cpp", "C:\\" ))
вышла ошибка
error C2664: _findfirst64i32: невозможно преобразовать параметр 2 из 'const char [4]' в '_finddata64i32_t *'

Добавлено через 30 минут
Спасибо, не тот параметр поменял, надо было в первом параметре к расширению добавить где искать. Еще один вопрос, а как сделать поиск, чтоб он искал и в подкаталогах?
0
tnk500
113 / 117 / 25
Регистрация: 25.08.2012
Сообщений: 1,287
Завершенные тесты: 3
09.07.2015, 11:26 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
tagboy, не там. hFile = _findfirst("C:\\...\\*.cpp", &findData)
1
tagboy
0 / 0 / 0
Регистрация: 04.01.2015
Сообщений: 44
09.07.2015, 12:06  [ТС] #5
а как сделать поиск, чтоб он и внутри указанных каталогов искал
0
tnk500
113 / 117 / 25
Регистрация: 25.08.2012
Сообщений: 1,287
Завершенные тесты: 3
09.07.2015, 12:26 #6
tagboy, перед поиском установите поле структуры findData attrib как _A_SUBDIR:
C
1
findData.attrib = _A_SUBDIR;
1
tagboy
0 / 0 / 0
Регистрация: 04.01.2015
Сообщений: 44
09.07.2015, 18:38  [ТС] #7
к сожалению поиск в поддиректориях с помощью findData.attrib = _A_SUBDIR; не работает. Например, в каталоге с проектом я создал папку test, туда положил .cpp файл. Но, к сожалению именно внутри папки test он не находит, а в каталоге с проектом он находит .cpp-файлы
0
tnk500
113 / 117 / 25
Регистрация: 25.08.2012
Сообщений: 1,287
Завершенные тесты: 3
09.07.2015, 20:27 #8
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
tagboy, видимо, тогда придется писать функцию рекурсивного обхода. Если в текущем каталоге есть другие каталоги — рекурсивно запускаете в цикле функцию для всех этих каталогов.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.07.2015, 20:27
Привет! Вот еще темы с ответами:

Вывод на экран список файлов и название программ С++ , находящимся в указанном при запуске программы каталоге - C++
Добрый день! Помогите пожалуйста: Написать программу, которая выведет на экран список файлов и название программ С++ ,...

Поиск английских гласных в указанном количестве предложений - C++
Здравствуйте. Дано количество предложений i и сами предложения. Требуется в каждом найти количество всех гласных букв. Код написал, но...

Поиск файлов в каталоге Linux - C++
Здравствуйте, мне нужно найти все файлы в опр. каталоге (на Linux), не подскажите, как это осуществить? Я это осуществил на OC...

Поиск файлов и папок в текущем каталоге - C++
Добрый вечер!Нужна программа,которая при ее вызове,переходит в нужную папку(по имени) и выводит список файлов и папок.То есть изначально...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Yandex
Объявления
09.07.2015, 20:27
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru