【Qt5开发及实例】26、得到文件的大小和目录的路径
来源:互联网 发布:cs1.6 for mac 编辑:程序博客网 时间:2024/06/06 00:51
说实话,我是为了混个持之以恒的标签的 = =,谁叫我过年都没怎么写呢!!!!
/*** 书本:【Qt5开发及实例】* 功能:得到文件的大小和目录的路径* 文件:main.cpp* 时间:2015年2月3日21:18:16* 作者:cutter_point*/#include <QCoreApplication>#include <QStringList>#include <QDir>#include <QtDebug>//根据给的路径得到文件的大小和目录qint64 du(const QString &path){ QDir dir(path); //这个类可以提供文件的目录和类容 qint64 size = 0; //得到文件目录下的所有的文件和目录 foreach(QFileInfo fileInfo, dir.entryInfoList(QDir::Files)) { size += fileInfo.size(); //把所有文件的大小加起来 } //得到所有子目录下文件的大小 //列出目录列表,不列出特殊的条目,“.”和".." foreach(QString subDir, dir.entryList(QDir::Dirs|QDir::NoDotAndDotDot)) { //路径+当前系统下的分割符+目录名 size += du(path + QDir::separator() + subDir); //递归调用,遍历所有目录,深度优先 } char unit = 'B'; qint64 curSize = size; //这个目录的大小 if(curSize > 1024) { //当前的大小比1024个字节还大,上面计数是按字节大小得到的fileInfo.size() curSize /= 1024; //除 unit = 'K'; //KB if(curSize > 1024) { //还大 curSize /= 1024; unit = 'M'; //MB if(curSize > 1024) { curSize /= 1024; unit = 'G'; //GB } //if } //if } //if qDebug()<<curSize<<unit<<"\t"<<qPrintable(path)<<endl; return size;}int main(int argc, char *argv[]){ QCoreApplication a(argc, argv); QStringList args = a.arguments(); QString path; if(args.count() > 1) { path = args[1]; } else { path = QDir::currentPath(); } qDebug()<<path<<endl;// path = "D:/Qt/5.1.0-rel-static";// path = "E:/DNF";// path = "E:/英雄联盟";// path = "F:/传智播客Hibernate视频教程"; du(path); return a.exec();}
0 0
- 【Qt5开发及实例】26、得到文件的大小和目录的路径
- _splitpath函数得到文件的目录名和路径
- 【Qt5开发及实例】27、获得文件的信息
- 【Qt5开发及实例】22、文件浏览器
- PHP中获取目录及子目录下的所有文件路径和目录路径
- 【Qt5开发及实例】2、正则表达式的验证
- 【Qt5开发及实例】10、关于进度条的显示
- 【Qt5开发及实例】19、一个简单的画图程序
- 【Qt5开发及实例】20、实现一个飞舞的蝴蝶
- 【Qt5开发及实例】25、实现代理的功能
- 【Qt5开发及实例】32、实现键盘的监控操作
- 获取指定路径下目录或文件的大小
- 得到文件的真实路径
- 【Qt5开发及实例】23、Qt调试器的配置,这里以Qt5为例
- Qt5主窗体程序: 文本编辑器的实现(Qt5开发及实例)
- Qt5主窗体程序: 文本编辑器的实现(Qt5开发及实例)
- java中得到当前路径和Properties文件的方法
- QT5开发及实例读后感
- 自动生成xcode proj 工程文件
- dokuwiki addnewpage插件无法使用问题的解决
- mysql 插入中文乱码解决方案
- Ireport报表奇偶行背景改变
- 寒城攻略:Listo 教你 25 天学会 Swift 语言 - 07 Control Flow
- 【Qt5开发及实例】26、得到文件的大小和目录的路径
- ViewPager + Fragment实现滑动标签页
- Java log4j 基本配置和使用
- 幕后英雄的用武之地——浅谈Java内部类的四个应用场景
- 如何处理Android2.3解析json出错,4.0不报错
- Android surfaceflinger 源代码分析
- CSS变量的各种玩法!!
- 5.HCNA-HNTD——ICMP协议
- 数据结构学习笔记(六)链表算法题