Qt中文件夹的操作

Qt中文件夹的操作

Qt中对于文件夹的操作类主要是QDir类,这个类中提供了文件夹的创建、删除、判断文件夹是否存在、文件夹中的文件数目等功能。

QDir用于操作路径名、访问有关路径和文件的信息以及操作底层文件系统。Qt中使用“/”作为通用目录分隔符。在QDir中可以使用相对路径或相对路径进行访问文件地址。

例如:

QDir("/home/user/Documents") //linux 下的绝对路径
QDir("C:/Users") //Window 下的绝对路径

你可以使用 isRelative() 或 isAbsolute() 函数来检查QDir使用的是相对文件路径还是绝对文件路径。调用makeAbsolute()将相对QDir转换为绝对QDir。

在这个类中可以使用 path() 获取路径,也可以额使用 setPath() 函数设置路径。

目录可以用 mkdir() 创建,用 rename() 重命名,用 rmdir() 删除。可以使用 exists() 测试具有给定名称的目录的存在,并且可以使用 isReadable()、isAbsolute()、isRelative() 和 isRoot()来测试目录的属性。

详细参考Qt中的QDir类。

QDir使用注意的问题:

1、在使用mkpath()创建和rmpath()删除路径的时候,不能在构造的时候传入路径,传入路径之后将无法删除成功和创建文件夹乱的问题。

2、在使用mkdir()和remove()删除文件夹的时候需要使用SetPath()函数设置路径,不然会删除其他文件夹。

3、使用count()函数获取文夹中的条目的时候返回会包括隐藏文件夹(例如:. 和 …)。

创建文件夹

//实例 QDir
 QDir *folder = new QDir;
 //判断创建文件夹是否存在
 bool exist = folder->exists(edit->text());
 if(!exist)
 {
 	 //创建文件夹
 	bool ok = folder->mkdir(edit->text());
 }

删除文件夹

 //判断创建文件夹是否存在
 bool exist = folder->exists(edit->text());
 if(exist)
 {
 	 //删除文件夹
 	bool ok = folder->remove(edit->text());
 }

获取文件中的元素数目

 //判断创建文件夹是否存在
 bool exist = folder->exists(edit->text());
 if(!exist)
 {
 	 //获取文件夹中的元素数目
 	uint count = folder->count();
 }
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值