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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
art3330
 Аватар для art3330
9 / 9 / 1
Регистрация: 16.12.2012
Сообщений: 141
#1

Поиск файлов определенного расширения - C++

06.05.2013, 12:48. Просмотров 1553. Ответов 4
Метки нет (Все метки)

Доброго времени суток. Есть такая проблема. Надо найти в каталоге (его вводит пользователь и этот момент у меня есть) все файлы определенных форматов (.ini и .csv) и добавить все имена в массив для дальнейшей обработки. Заранее спасибо.

Добавлено через 27 секунд
Поиск надо только в каталоге который ввел пользователь, по подкаталогам проходить не надо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.05.2013, 12:48     Поиск файлов определенного расширения
Посмотрите здесь:

C++ Поиск определенного слова
C++ Поиск файлов С++
C++ Удаление файлов определенного расширения
C++ Поиск файлов
Изменить расширения файлов C++
C# C++ Задача поиск определенного символа в строке, запись того что после него в дргую строку C++
Сортировка файлов по папкам в зависимости от расширения C++
поиск определенного элемента в массиве C++
Регулярное выражение для получения списка файлов определенного расширения C++
C++ Опрос папки и удаление из неё всех файлов кроме заданного расширения
C++ Программа шифрования файлов с возможностью расширения функционала
Открытие файлов из каталога и сохранение их в каталог определенного размера C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Bend3r
 Аватар для Bend3r
148 / 135 / 18
Регистрация: 29.07.2012
Сообщений: 709
06.05.2013, 13:02     Поиск файлов определенного расширения #2
Помудри с этим кодом.
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
#include<windows.h>
#include<iostream>
#include <string.h>
using namespace std;
 
int main()
{
char massiv[500]; //массив
char *i;
    WIN32_FIND_DATA FindFileData;
    HANDLE hf;
    hf=FindFirstFile("c:\\*", &FindFileData);  // "c:\\*" тут указываете путь где искать.
    if (hf!=INVALID_HANDLE_VALUE){
        do
        {
        i=strchr(FindFileData.cFileName,'.ini');
        if(i > 0)
        {
            cout << FindFileData.cFileName << "\n";
        }
        i=0;
        i=strchr(FindFileData.cFileName,'.csv');
        if(i > 0)
        {
            cout << FindFileData.cFileName << "\n";
        }
 
        }
        while (FindNextFile(hf,&FindFileData)!=0);
        FindClose(hf);
    }
    system("Pause");
}
art3330
 Аватар для art3330
9 / 9 / 1
Регистрация: 16.12.2012
Сообщений: 141
06.05.2013, 13:22  [ТС]     Поиск файлов определенного расширения #3
Спасибо, Bend3r. Сейчас помудрю =)
Убежденный
Системный программист
 Аватар для Убежденный
14666 / 6612 / 1047
Регистрация: 02.05.2013
Сообщений: 10,887
Завершенные тесты: 1
06.05.2013, 13:34     Поиск файлов определенного расширения #4
Поиск файлов - FindFirstFile/FindNextFile/FindClose.
Определить расширение файла - функция PathFindExtension.
Для сравнения расширения с образцами лучше использовать сравнение без учета регистра,
простейшее - CompareString или lstrcmpi, причем первый способ предпочтительнее, так как
может использовать принципы сравнения строк, независимые от текущей локали.
См. флаг LOCALE_INVARIANT. В качестве массива можно использовать std::vector.
art3330
 Аватар для art3330
9 / 9 / 1
Регистрация: 16.12.2012
Сообщений: 141
06.05.2013, 14:16  [ТС]     Поиск файлов определенного расширения #5
Спасибо.
Yandex
Объявления
06.05.2013, 14:16     Поиск файлов определенного расширения
Ответ Создать тему
Опции темы

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