Чтение файлов из каталога по одному - PullRequest
1 голос
/ 08 декабря 2011

У меня есть файлы в каталоге с именами 1.txt, 2.txt и так далее. Я читаю эти файлы по:

int counter=0;

unsigned char buffer[212]={0};

while(1)

{

sprintf(buffer,"path/%d.txt",++counter);

FILE *fp = fopen(buffer,"rb");

// some operations..

fclose(fp); 

}

У меня в папке более 800 текстовых файлов (1.txt - 800.txt). Но когда около 500 файлов читаются то есть с 1.txt до 500.txt, он выходит и не читает следующие файлы.

Может кто-нибудь исправить эту проблему? Спасибо заранее.

1 Ответ

1 голос
/ 08 декабря 2011

Возможно, вы используете файловые дескрипторы (максимум, например, 500 на процесс). Попробуйте использовать функцию readdir.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...