我在名为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提前。
答案 0 :(得分:1)
也许你的文件描述符用完(例如每个进程最多500个)。尝试使用readdir函数。