zoukankan      html  css  js  c++  java
  • scandir 使用示例

    int filter_fn(const struct dirent * ent) {
        if (ent->d_type != DT_REG)
            return 0;
        return (strncmp(ent->d_name, "w_", strlen("w_")) == 0);
    }
    void SysWatcher::scan_log(const char * dir_name) {
        int n;
        struct dirent **namelist; // struct dirent * namelist[];
        n = scandir(dir_name, &namelist, filter_fn, alphasort);
        if (n < 0) {
            ALOGD(" SysWatcher scandir error! n<0 n=%d ", n);
        }
        if (n == 0) {
            free(namelist);
        } else {
            for (int i = 0; i < n; i++) {
                printf("%s ", namelist[i]->d_name);
                string fileName = string(namelist[i]->d_name);
                //ALOGD(LOG_TAG " SysWatcher old push %s------ ", fileName.c_str());
                logFiles.push(fileName);
                free(namelist[i]);
            }
            free(namelist);
        }
        return;
    }
  • 相关阅读:
    String类的concat()方法
    字符串转换为时间类型
    translate函数
    弹出窗口
    数据库大小写问题
    360浏览器屏蔽广告
    String.valueOf()
    测试
    选择排序算法
    输出101~200内的质数
  • 原文地址:https://www.cnblogs.com/wxmdevelop/p/4791651.html
Copyright © 2011-2022 走看看