c - 从目录中逐一读取文件

标签 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 它退出并且不读取下一个文件。

谁能解决这个问题?提前谢谢。

最佳答案

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

关于c - 从目录中逐一读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8427567/

相关文章:

c - 在 C 中将预定义变量作为指针传递

c - Visual Studio 开发人员控制台 cd 到不同的驱动器

c++ - C - 枚举索引数组的优点/缺点

c - 哪种方式更好,类型更安全?

具有多部分形式的 Angular 6 后请求不包含已发布对象的附加文件

PHP: move_uploaded_file(): 无法移动 '/

c - 在 C 中使用指针时遇到问题

python - 在 Python 中查找和组合数据

android - 无法使用 mkdirs() 创建目录 - android

c - 为什么 C 文件流的开头称为 `SEEK_SET` ?