Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.12.2011, 11:09   #1
Cats_foot
 
Регистрация: 06.12.2011
Сообщений: 8
По умолчанию Чтение найденных файлов в директории

И снова здравствуйте. Столкнулся с проблемой у меня есть некая функция для поиска файлов в директории по маске(написана не мной) :
Код:
bool seek(LPCTSTR lpszFileName, BOOL bInnerFolders)
{                     
	LPTSTR part;
	char tmp[MAX_PATH];				
	char name[MAX_PATH];

	HANDLE hSearch = NULL;
	WIN32_FIND_DATA wfd;
	memset(&wfd, 0, sizeof(WIN32_FIND_DATA));
	

	if(bInnerFolders)
	{
		if(GetFullPathName(lpszFileName, MAX_PATH, tmp, &part) == 0) 
			return FALSE;
		lstrcpy(name, part);
		lstrcpy(part, "*.");

		
		wfd.dwFileAttributes = FILE_ATTRIBUTE_DIRECTORY;
		if (!((hSearch = FindFirstFile(tmp, &wfd)) == INVALID_HANDLE_VALUE))
			do
			{
				
				if (!strncmp(wfd.cFileName, ".", 1) || !strncmp(wfd.cFileName, "..", 2))            
					continue;
				if (wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) 
				{
				
					char next[MAX_PATH];
					if(GetFullPathName(lpszFileName, MAX_PATH, next, &part) == 0) return FALSE;
					lstrcpy(part, wfd.cFileName);
					lstrcat(next, "\\");
					cout << next << endl;
					lstrcat(next, name);
				
					seek(next, TRUE);
				}
			}
			while (FindNextFile(hSearch, &wfd)); 
			FindClose (hSearch); 
	}
	if ((hSearch = FindFirstFile(lpszFileName, &wfd)) == INVALID_HANDLE_VALUE) 
		return TRUE; 
	do
	if (!(wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)) 
	{
		char file[MAX_PATH];
		if(GetFullPathName(lpszFileName, MAX_PATH, file, &part) == 0) return FALSE;
		lstrcpy(part, wfd.cFileName);
		
		
		cout << file << endl;
	}
	while (FindNextFile(hSearch, &wfd));	
	FindClose (hSearch);					

	return TRUE;
}
Мне нужно прочитать найденные файлы и найти в них искомые последовательности.

В общем объясните или дайте наводку как это реализовать с помощью каких функций?

Вот так я считываю указанный файл:
Код:
setlocale(LC_ALL,"russian");
	char count=0;
	wchar_t nomer_str[10000];
    FILE* log_file;
    FILE* result_file;
    wchar_t current_str[10000];

	if(!(log_file = _wfopen(L"c:\\test\\123\\*.log", L"rt, ccs=UTF-8")))
    {
        printf("Open log_file failed.\n");
		_getch();
        return 0;
    }

	result_file=fopen("c:\\test\\123\\res.txt", "w");

    fin: while(!(feof(log_file)))
    {
        fgetws(current_str, 10000, log_file);
		

        if (ferror(log_file))
        {
            printf("error");
            return 0;
        }


        if (((wcsstr (current_str,L"Слово1"))!=NULL)&&((wcsstr (current_str,L"Слово2"))!=NULL))
        {
			
            fputws(current_str, stdout);
            fputws(current_str, result_file);
			
        }
		 
    }
		 
		
      
		
_getch();
    fclose(log_file);
    fclose(result_file);

    return 0;
}
а с найденными, что то не могу разобраться(
Cats_foot вне форума Ответить с цитированием
Старый 14.12.2011, 10:16   #2
Cats_foot
 
Регистрация: 06.12.2011
Сообщений: 8
По умолчанию

Ни ответа ни привета (
Cats_foot вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Чтение файлов из директории WarAngel.alk PHP 2 22.10.2011 18:45
[Орешек] Обновления истории найденных на ПК файлов... 2 строки 2 одинаковых имени файла но разные пути... Человек_Борща Общие вопросы Delphi 2 03.07.2011 14:31
Удаление найденных файлов SnowSin Помощь студентам 1 23.04.2011 14:37
С# вывод списка файлов в директории Айат Помощь студентам 3 28.11.2009 11:43
Программа получения списка файлов директории и изменения атрибутов файлов roma86 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 7 09.06.2009 09:08