从目录中逐个读取文件

时间:2011-12-08 07:23:13

标签: c file

我在名为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个txt文件(1.txt - 800.txt)。但是当读取大约500个文件时 即从1.txt到500.txt它会退出并且不会读取下一个文件。

有人可以解决这个问题吗? Thanx提前。

1 个答案:

答案 0 :(得分:1)

也许你的文件描述符用完(例如每个进程最多500个)。尝试使用readdir函数。