一、源代码说明

本文介绍的是ccfree框架的目录操作函数和类。

函数和类的声明文件是ccfree/_ccfree.h。

函数和类的定义文件是ccfree/_ccfree.cpp。

示例程序位于ccfree/demo目录中。

编译规则文件是ccfree/demo/makefile。

二、创建目录

在Linux下,如果想创建一个"/tmp/aaa/bbb/ccc/ddd/data.xml"的文件,必须先创建"/tmp/aaa/bbb/ccc/ddd",步骤如下:

1)如果"/tmp"目录不存在,创建"/tmp"。

2)如果"/tmp/aaa"目录不存在,创建"/tmp/aaa"。

3)如果"/tmp/aaa/bbb"目录不存在,创建"/tmp/aaa/bbb"。

4)如果"/tmp/aaa/bbb/ccc"目录不存在,创建"/tmp/aaa/bbb/ccc"。

5)如果"/tmp/aaa/bbb/ccc/ddd"目录不存在,创建"/tmp/aaa/bbb/ccc/ddd"。

6)创建"/tmp/aaa/bbb/ccc/ddd/data.xml"文件。

这些操作虽然没有多少技术含量,但也很烦人。

MKDIR函数根据绝对路径的文件名或目录名逐级的创建目录。

函数声明:

bool 

参数说明:

pathorfilename:绝对路径的文件名或目录名。

bisfilename:说明pathorfilename的类型,true-pathorfilename是文件名,否则是目录名,缺省值为true。

返回值:true-创建成功,false-创建失败,如果返回失败,原因有大概有三种情况:1)权限不足;2)pathorfilename参数不是合法的文件名或目录名;3)磁盘空间不足。

示例(demo30.cpp)

/*

三、获取目录下的文件信息

ccfree框架把获取某目录及其子目录中的文件列表信息的功能封装成CDir类。

类的声明:

// 获取某目录及其子目录中的文件列表信息。

CDir类的成员变量和函数的说明文字在类的声明中已详细描述。

我们通过一个应用场景来演示CDir类的用法。

先执行以下脚本生成测试目录和文件。

mkdir 

执行以上脚本后,在/tmp/root目录中的目录和文件列表如下:

示例(demo32.cpp)

/*

运行效果

注意事项:

1)每次调用ReadDir方法后,把CDir类其它成员变量的值输出到屏幕,观察运行效果。

2)OpenDir方法的in_MatchStr参数非常重要,在实际开发中应用广泛。

3)如果文件名圆点"."打头,OpenDir方法将不读取这些文件,如果您希望读取这些文件,可以修改_OpenDir方法中的源代码。

4)OpendDir方法的in_MaxCount参数设置了每次扫描目录中的文件数量,建议不超过10000,如果取值过大,打开目录的时间会比较长,还会消耗比较多的内存。

5)OpenDir的bSort参数设置是否对m_vFileName容器进行排序,排序会消耗资源和时间,可以不排序就不排序。

ideajava目录显示类成员_c++ 目录操作相关推荐

  1. ideajava目录显示类成员_面试:C++不可继承类

    作者:wxquare 链接:https://www.cnblogs.com/wxquare/p/7280025.html 面试中可能遇到让设计一个无法被继承的类.最简单的实现是将该类的构造函数设置为私 ...

  2. 使用“override”声明的成员函数不能重写基类成员_C++日志(三十五)虚基类与其子类的构造函数...

    第三十四篇日志中提到,子类对象调用父类同名的函数时需要使用作用域标识符进行限定,这是在任何继承情况下都可以使用的普适方法. 问题引入: 考虑一种特殊的情况:子类全部或部分的基类(称为中间基类)同是继承 ...

  3. 类成员_月隐学python第17课

    目录 1.类成员 2 实例成员的动态绑定 3. 系统魔术⽅法 3.1 __init__ 和 __new__ 3.2 算数运算符重载 3.3 迭代器 3.4 __call__ 4.单例设计模式 4.1. ...

  4. ImageIo类常用方法以及图片操作

    ImageIo类常用方法以及图片操作 文章目录 ImageIo类常用方法以及图片操作 常用方法 图片操作 结尾 常用方法 读 从图中可以看到有三个重载的方法,返回的类型都是BufferedImage ...

  5. 87_类成员的继承和重写

    文章目录 91.类成员的继承和重写 查看类的继承层次结构 重写的两个例子 91.类成员的继承和重写 成员继承:子类继承了父类除构造方法之外的所有成员. 方法重写:子类可以重新定义父类中的方法,这样就会 ...

  6. 定义类C++ primer目录

    本文笔者在广东吃饭的时候突然想到的...这段时间就有想写几篇关于定义类的笔记,所以回家到之后就奋笔疾书的写出来发表了 目录 第1章 快速入门 1.1  编写简略的C++程序 1.2 初窥输入/输出 1 ...

  7. Linux学习笔记之文件管理和目录管理类命令

    在开始理解Linux文件管理和目录类命令之前,有必要先说一下,关于操作系统在计算机中都做了哪些工作. 0.操作系统的工作 1.文件管理,增删改查 2.目录管理 3.进程管理 4.软件安装 5.运行程序 ...

  8. php 文件查找类,PHP类搜索定位目录树的具体实现方式解析

    大家现在也许对PHP语言比较感兴趣,因为它能够帮助我们很轻松的建设一个功能强大的网站.今天我们将向大家介绍的是有关PHP类搜索定位目录树的方法.大多数时候,在嵌套的PHP结 构里进行迭代需要你写出能够 ...

  9. php修改文件临时目录,PHP_详谈PHP文件目录基础操作,我们知道,临时声明的变量是 - phpStudy...

    详谈PHP文件目录基础操作 我们知道,临时声明的变量是保存在内存中的,即便是静态变量,在脚本运行完毕后也会被释放掉,so,想长久保存一个变量的内容,方法之一就是写到文件中,放到硬盘或服务器上,为此文件 ...

最新文章

  1. webstrom代码检查
  2. Linux C :Linux 下第一个C程序
  3. NYOJ-172 小珂的图表
  4. leetcodeZ字形变换第1363题python
  5. MyBatis 核心对象
  6. Tomcat启动超时问题Server Tomcat v7.0 Server at localhost was unable to start within 45 seconds
  7. 【算法】QuickSort
  8. 7.16-7.22第二周
  9. 详述一次大量删除导致MySQL慢查的过程
  10. bootstrap-multiselect.js如何动态更新select里的数据
  11. 如何准备数学建模?(附建模必备资料)
  12. 修改FCKEditor实现将图片、文件等保存到数据库
  13. win2008使用windows loader激活提示Unsupported partition table
  14. python求学生成绩平均值_python 计算student_grade.txt 中 语文成绩的平均值, 找出数学成绩最高的学生是谁...
  15. 系统U盘还原成普通U盘
  16. 官方文件出炉!北京住建委权威解读商住限购
  17. Spark存储体系——内存管理器
  18. 移动硬盘盒芯片(SATAIII)
  19. U盘识别不了如何恢复,如何恢复不能识别的U盘
  20. Gym - 101612A 点亮数字

热门文章

  1. 容器学习 之 容器的网络类型(十二)
  2. leetcode-剑指 Offer 44. 数字序列中某一位的数字
  3. Codeup-问题 A: 问题 A: 矩形嵌套
  4. 搜索2.0:利用用户点击记录改善搜索结果
  5. 小程序同时设置点击跳转与自动跳转导致重复跳转的问题及解决
  6. 报错:The method xxxof type xxx must override or implement a supertype method
  7. 44行代码AC_卡片换位(DFS变形题 视频讲解 )
  8. JavaWeb程序设计任务教程(黑马程序员 传智播客)测一测 编写一个Servlet,实现统计网站被访问次数的功能
  9. 为什么消息队列不实现精准一次(exactly once)?
  10. Mysql俩种表级锁