gpt4 book ai didi

计算文件夹中 txt 文件的数量以及最旧的文件(如果文件数量大于 10)?

转载 作者:行者123 更新时间:2023-11-30 17:31:53 28 4
gpt4 key购买 nike

我正在使用以下程序来获取文件夹中的文件数量。
如果文件数量大于 10,我想从文件夹中删除最旧的文件。

#include<dirent.h>

int file_count = 0

DIR * dirp;

struct dirent * entry;

dirp = opendir("path");

while ((entry = readdir(dirp)) != NULL) {

if (entry->d_name!=NULL) {

file_count++;

}

}


closedir(dirp);

printf("%d", file_count-2);

return 0;
}

最佳答案

我可以向您展示如何做到这一点。编写代码后回答您自己的问题。

  1. 使用 Scandir() 函数来统计目录中文件的数量。

    see this

  2. write system(cd/path/to/your/dir/&& ls -t > res.txt) 它将使用上次修改时间对所有文件进行排序。您还可以按创建日期进行排序

    see this.

  3. 然后从文件中逐一读取文件名,跳过开始的 11 个文件,其中一个将是您的 res.txt 并将其存储在 string name="filename"

  4. 声明一个字符串,如string cmd="rm -f "

  5. 将文件名附加到 strcat(cmd,name); 使用。

  6. 写入system(cmd);

从读取文件到第 4 步,它应该处于 while 循环中,并且条件应该是 while(!EOF)

关于计算文件夹中 txt 文件的数量以及最旧的文件(如果文件数量大于 10)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24427471/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com