随笔 - 120  文章 - 0  评论 - 22  阅读 - 56万

linux下使用c判断文件夹是否为空的小程序

 自己写了一个 判断文件夹是否为空的小代码

//文件夹操作相关的函数的帮助
$: man 3 readdir

  

复制代码
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <dirent.h>

int isdirempty(char *dirname)
{
    /* 打开要进行匹配的文件目录 */
    DIR *dir = opendir(dirname);
    struct dirent *ent;
    if (dir == NULL)
    {  
        perror("seekkey.c-98-opendir");
        return -1;
    }  
    while (1)
    {  
        ent = readdir (dir);
        if (ent <= 0)
        {  
            break;
        }  
        if ((strcmp(".", ent->d_name)==0) || (strcmp("..", ent->d_name)==0))
        {  
            continue;
        }  
        /*判断是否有目录和文件*/
        if ((ent->d_type == DT_DIR) || (ent->d_type == DT_REG))
        {  
            return -1;
        }  
    }  
    return 0;
}

int main()
{
    char *dirname = "bb";
    int res = isdirempty(dirname);
    if (res == 0)
    {  
        printf ("是空\n");
    }  
    else
    {  
        printf ("不是空\n");
    }  
}
复制代码

 

posted on   欢跳的心  阅读(5715)  评论(2编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示