Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/26: Рейтинг темы: голосов - 26, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 04.10.2008
Сообщений: 5

Как к файлам в папке обратиться?

04.10.2008, 13:33. Показов 5442. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!

Такая проблема у меня. Сначала преамбула. Есть видеокамера, она снимает "неважнокакое"

явление. Она подключена к компьютеру. При остановке работы камеры, она выдает мне

отснятое в виде кадров(рисунков,изображений) в какую-нибудь папку(это можно настроить).

При этом количество файлов мне неизвестно, названия их тоже (там автоматически

генерируются) неизвестны.

Теперь сама амбула. У меня есть программа(на С++), которая складывает(накладывает) два

таких кадра (это надо по работе). Но мне надо сложить все айлы из этой ерслувотой папки.

Так вот есть ли какая-нибудь уже готовая функция(или ещё что-нибудь), которая по

названию(пути) папки, возвращала бы мне все файлы,которые там есть. Чтобы после этого

я мог бы, зная их количество, названия, сложить бы их. (То есть типа массива из файлов

"чтоли")

Есть такое, или хоть что-то похожее?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.10.2008, 13:33
Ответы с готовыми решениями:

Как с использованием VBA обратиться ко всем .xls файлам в определённой папке?
Просьба понимающих помочь в следующей ситуации: к примеру в каталоге "Мои документы" есть две папки: "папка №1", в которой...

Перенаправление в .htaccess. Как все запросы к файлам в одной папке перенаправить к файлам в другой папке
Здравствуйте, нужно сделать второй сайт, который будет почти копией существующего. оба сайта на одном хосте первый сайт лежит в...

Как установить права доступа к папке и всем файлам в папке?
Здравствуйте. Как установить права доступа к папке и всем файлам в папке? Для папки 555, для файлов 444. Функция chmod, устанавливает...

15
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
04.10.2008, 13:38
Нет, готовой функции нет. Руками делай.
Да поможет тебе в форточках FindFirstFile, FindNextFile, а в великих никсах - readdir, например.
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
04.10.2008, 13:43
можно использовать для сканирования файлов в папке структуру ffblk и функции findfirst и findnext
0
0 / 0 / 0
Регистрация: 04.10.2008
Сообщений: 5
04.10.2008, 13:48  [ТС]
А что эта за струтура ffblk? MSDN чо-то не находит.
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
04.10.2008, 13:49
она описана в структуре dir.h
0
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
04.10.2008, 13:55
Code
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
#include <dir.h>
 
void main(void)
{
   struct ffblk ffblk;int goout;
  goout = findfirst(**.**,&ffblk,0);
   while (!goout)  {
     printf("%s\n", ffblk.ff_name);
     goout = findnext(&ffblk);
   }
}
Но лучше, конечно, виндовые... dir.h в MSDN не должно, наверное, быть. dir.h вроде детище дяди Бори...
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
04.10.2008, 13:56
Vourhey, эх... не даешь подрастающему поколению повода самому разобраться)))) скоро их совсем разбалуем...
0
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
04.10.2008, 13:58
WooDooMan, я ее без компилера писал надеюсь, там где-нить ошибка. Да, виноват, бывает...
0
0 / 0 / 0
Регистрация: 04.10.2008
Сообщений: 5
04.10.2008, 14:34  [ТС]
Цитата Сообщение от Vourhey Посмотреть сообщение
Code
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
#include <dir.h>
 
void main(void)
{
   struct ffblk ffblk;int goout;
  goout = findfirst(**.**,&ffblk,0);
   while (!goout)  {
     printf("%s\n", ffblk.ff_name);
     goout = findnext(&ffblk);
   }
}
То есть в goout находится необходимый файлик?
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
04.10.2008, 14:37
нет, описание файла будет записано в структуру, в goout результат поиска, а еще там есть такая очень важная особенность, последний файл функция findnext находит два раза, после чего поиск останавливается...
0
0 / 0 / 0
Регистрация: 04.10.2008
Сообщений: 5
04.10.2008, 14:55  [ТС]
Кажется,начал понимать.

Посмотрел в инете описание этой структуры, там есть такая графа как название файла.То есть я могу. указав эту графу, открыть файл, поколдовать над ним?

И ещё вопрос, мне, по идее, надо по два файла обрабатывать.(Хотя лучше всего сразу все). Мне для этого вторую структуру надо создать? Или можно, примерно так

Code
1
2
3
4
5
int goout1;
int goout2;
 
goout1 = findnext(&ffblk);
goout2 = findnext(&ffblk);
Или как надо?
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
04.10.2008, 14:58
ну вообще int никогда не был структурой, это тип данных, и если бы ты читал мой прошлый пост, то знал, что в него пишется результат поиска, а не структура, и зачем тебе две структуры, тебе надо массив строк или там структур, смотря какие данные интересуют, а их взять можно из структуры ffblk... а куда ты их сохранишь не суть важно... просто отсканируй папку и сохрани нужные тебе данные...
1
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
04.10.2008, 15:01
Циклы и возвращаемые значения, видимо, для чего-то другого создавали...
1
0 / 0 / 0
Регистрация: 04.10.2008
Сообщений: 5
04.10.2008, 15:01  [ТС]
Все понял! Пошел прогать, надеюсь получится!
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
04.10.2008, 15:06
Vourhey, неужели в си циклы появились... ))))
0
 Аватар для silver0909
0 / 0 / 0
Регистрация: 24.11.2008
Сообщений: 34
27.12.2008, 15:53
Привет всему форуму !
вот код , проблема на экране ничего не вижу как описать ввывод содержимого(.txt)
#include<stdio.h>
#include<string.h>
#include<dir.h>

#include<conio.h>
#define path "G:\\<path>\\"

void main()
{

struct ffblk f;
FILE* fIn;
char str[100];
int fnd=findfirst(strcat(path,"*.txt"),&f,0) ;
while(!fnd)
{
strcpy(str,path);
strcat(str,f.ff_name);
fIn=fopen(str,"r");
while(!feof(fIn))
{
//fscanf(fIn,"%s\n",&f);
printf("%s\n",f.ff_name);

return;
//÷åòà äåëàåì
}
fclose(fIn);
fnd=findnext(&f);
}
getch();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.12.2008, 15:53
Помогаю со студенческими работами здесь

Как осуществлять навигацию по файлам в папке?
Пишу просмотрщик фотографий. Как известно, в нём есть кнопочки вперед-назад, чтобы смотреть изображения, которые находятся до и после...

Как настроить общий доступ к файлам в папке?
Доброго времени суток!Уважаемые форумчане.Прошу помощи.У меня в windows 7 был настроен общий доступ к папке. Затем я общий доступ к этой...

Как запретить пользователю доступ к папке, или определенным файлам?
Добрый день! Очень нужна ваша помощь! Мне нужно организовать, что бы по нажатию кнопки пользователь не смог получить доступ к определенным...

Как обратиться к файлам в известной директории, но не зная названия самих файлов расширения .txt
Вообщем у меня есть папка &quot;результаты&quot;, которая находиться рядом с самим эксешником программы, в этой папке есть N кол-во папок с не...

Как обратиться к прикреплённым файлам в "Bat to Exe Converter"?
Собственно, есть такая прога &quot;bat to exe converter&quot;. Кому надо -тот знает. Так вот она позволяет прикреплять в .exe файл свои файлы,...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru