当前位置: 首页 > news >正文

福州营销网站建设老品牌西安网站品牌建设

福州营销网站建设老品牌,西安网站品牌建设,免费网站app哪个好,做网站的大公司一、目录操作(QDir 类) QDir 类提供访问系统目录结构 QDir 类提供对目录结构及其内容的访问。QDir 用于操作路径名、访问有关路径和文件的信息以及操作底层文件系统。它还可以用于访问 Qt 的资源系统 Qt 使用“/”作为通用目录分隔符#xff0c;与“/”在 URL 中用作路径分…一、目录操作(QDir 类) QDir 类提供访问系统目录结构 QDir 类提供对目录结构及其内容的访问。QDir 用于操作路径名、访问有关路径和文件的信息以及操作底层文件系统。它还可以用于访问 Qt 的资源系统 Qt 使用“/”作为通用目录分隔符与“/”在 URL 中用作路径分隔符的方式相同。如果您总是使用“/”作为目录分隔符Qt 将转换您的路径以符合底层操作系统。 QDir 可以使用相对路径或绝对路径指向文件。绝对路径以目录分隔符开头(在 Windows 下可以选择以驱动器规格开头)。相对文件名以目录名或文件名开头并指定相对于当前目录的路径。 下面是QDir的一些常用方法 构造函数QDir(const QString path QString()) 判断路径是否存在bool exists() const; 判断是否是文件bool isFile() const; 判断是否是文件夹bool isDir() const; 获取当前路径QString absolutePath() const; 获取文件名QString fileName() const; 获取文件目录QString dirName() const; 获取文件大小qint64 size() const; 获取文件的创建时间QDateTime created() const; 获取文件的最后修改时间QDateTime lastModified() const; 案例分析 main.cpp #include QCoreApplication#include QDir #include QStringList #include QtDebug// 自定义函数实现获取目录下大小 qint64 GetDirFileInfoSizeFunc(const QString qpath) {// QDir类专门用来操作路径名称或底层文件系统可以使用相对或绝对路径来指向一个文件/目录QDir qdirs(qpath);qint64 qsize0; // 存放目录占据空间// QFileInfor类提供有关文件系统当中文件名称、路径位置、访问权限、文件类型等等信息// entryInfoList函数获取过滤之后获得的文件名夹下面的文件信息列表foreach(QFileInfo finfo,qdirs.entryInfoList(QDir::Files)){qsizeqsizefinfo.size();}// QDir::Dirs列出目录。QDir::separator()不列出文件系统当中的特殊文件foreach(QString sDir,qdirs.entryList(QDir::Dirs|QDir::NoDotAndDotDot)){qsizeqsizeGetDirFileInfoSizeFunc(qpathQDir::separator()sDir);}char uintB;qint64 currentdirsizeqsize;if(currentdirsize1024){currentdirsizecurrentdirsize/1024;uintK;if(currentdirsize1024){currentdirsizecurrentdirsize/1024;uintM;if(currentdirsize1024){currentdirsizecurrentdirsize/1024;uintG;if(currentdirsize1024){currentdirsizecurrentdirsize/1024;uintT;}}}}qDebug()目录占据空间为currentdirsize\tqPrintable(qpath);return qsize; }int main(int argc, char *argv[]) {QCoreApplication a(argc, argv);// 该字符串存储路径QString strPath;strPathQDir::currentPath(); // 获取当前目录qDebug()当前目录为strPathendl;// 调用此函数求目录占据空间的大小GetDirFileInfoSizeFunc(strPath);return a.exec(); }编译执行结果 二、QDir 类综合应用展示系统文件实战操作 展示系统文件如下 代码示例 qdirfileviews.h #ifndef QDIRFILEVIEWS_H #define QDIRFILEVIEWS_H#include QDialog#include QListWidget // 列表框 #include QListWidgetItem #include QLineEdit // 单行输入框/单行编辑框#include QDir // 获取操作路径及底层文件系统 #include QFileInfoList // 获取指定目录的基本数据信息#include QVBoxLayout // 垂直布局#include QStringListclass QDirFileViews : public QDialog {Q_OBJECTpublic:QDirFileViews(QWidget *parent nullptr);~QDirFileViews();private:QLineEdit *filelineedit; // 显示所选择目录名称QListWidget *filelistwidget; // 列表框展示目录和文件QVBoxLayout *glayout; // 垂直布局public:void dispfileinfolist(QFileInfoList list); // 显示目录和文件所对应图标public slots:void dispdir(QDir dir);void dispdirshow(QListWidgetItem *item);}; #endif // QDIRFILEVIEWS_Hmain.cpp #include qdirfileviews.h#include QApplicationint main(int argc, char *argv[]) {QApplication a(argc, argv);QDirFileViews w;w.show();return a.exec(); }qdirfileviews.cpp #include qdirfileviews.hQDirFileViews::QDirFileViews(QWidget *parent): QDialog(parent) {resize(500,350);setWindowTitle(QDir类综合控件应用测试);filelineeditnew QLineEdit(/);filelistwidgetnew QListWidget;glayoutnew QVBoxLayout(this);glayout-addWidget(filelineedit);glayout-addWidget(filelistwidget);// 信号与槽函数连接connect(filelineedit,SIGNAL(returnPressed()),this,SLOT(dispdir(QDir)));connect(filelistwidget,SIGNAL(itemDoubleClicked(QListWidgetItem*)),this,SLOT(dispdirshow(QListWidgetItem*)));QString root/;QDir rootDir(root);QStringList strlist;strlist*;// entryInfoList函数获取过滤之后获得的文件名夹下面的文件信息列表QFileInfoList listrootDir.entryInfoList(strlist);// 调用此函数来显示dispfileinfolist(list);}QDirFileViews::~QDirFileViews() { }void QDirFileViews::dispfileinfolist(QFileInfoList list) // 显示目录和文件所对应图标 {filelistwidget-clear();for (unsigned int i0;ilist.count();i){QFileInfo tempfileinfolist.at(i);if(tempfileinfo.isDir()) // 判断是目录{QIcon ico(d:/dir.jpg);QString filenametempfileinfo.fileName();QListWidgetItem *tempnew QListWidgetItem(ico,filename);filelistwidget-addItem(temp);}else if(tempfileinfo.isFile()) // 判断是文件{QIcon ico(d:/file.jpg);QString filenametempfileinfo.fileName();QListWidgetItem *tempnew QListWidgetItem(ico,filename);filelistwidget-addItem(temp);}}}void QDirFileViews::dispdir(QDir dir) {QStringList strlist;strlist*;QFileInfoList fileinfolistdir.entryInfoList(strlist,QDir::AllEntries,QDir::DirsFirst);dispfileinfolist(fileinfolist); }void QDirFileViews::dispdirshow(QListWidgetItem *item) {QDir dir;QString stritem-text();dir.setPath(filelineedit-text());dir.cd(str);filelineedit-setText(dir.absolutePath());dispdir(dir); }三、QFilelnfo 类介绍 QFileInfo是一个类用于获取关于文件或目录的元信息。它提供了各种方法来检索有关文件或目录的信息例如文件的大小、创建时间、修改时间、访问权限等。QFileInfo类也可以用于检查文件或目录是否存在并检索每个文件或目录的绝对路径。 该类的构造函数需要一个文件路径或目录路径参数。可以使用QFile类的fileInfo方法来生成QFileInfo对象或者使用QDir类的entryInfo或entryInfoList方法来生成QFileInfo对象。QFileInfo还提供了许多其他的方法例如isFile()isDir()isExecutable()等用于检查文件或目录的类型和属性。 QFileInfo类是Qt中用于文件和目录操作的常用类之一可用于创建、修改或删除文件和目录或处理文件和目录的元数据。 四、QFilelnfo 类获取文件属性及相关信息实战 案例分析实现下面功能 代码示例 getfileinfo.cpp #include getfileinfo.hGetFileInfo::GetFileInfo(QWidget *parent): QDialog(parent) {setWindowTitle(获取文件属性项目实战模块);labelfilenamenew QLabel(文件路径名称);qlineeditfilenamenew QLineEdit;qpushbuttongetfilenamenew QPushButton(打开文件...);labelfilesizenew QLabel(文件容量大小);qlineeditfilesizenew QLineEdit;labelfilecreatetimenew QLabel(文件创建时间);qlineeditfilecreatetimenew QLineEdit;labelfilemodifytimenew QLabel(文件修改时间);qlineeditfilemodifytimenew QLineEdit;labelfileaccesstimenew QLabel(文件访问时间);qlineeditfileaccesstimenew QLineEdit;qlabelfileattributenew QLabel(文件属性);qcheckboxisfilenew QCheckBox(文件);qcheckboxishide new QCheckBox(隐藏属性);qcheckboxisreadable new QCheckBox(只读属性);qcheckboxiswritablenew QCheckBox(只写属性);qcheckboxisexecutenew QCheckBox(执行权限);qpushbuttongetfileattributeinfonew QPushButton(获取文件属性的全部数据信息...);// 布局QGridLayout *glayoutnew QGridLayout;glayout-addWidget(labelfilename,0,0);glayout-addWidget(qlineeditfilename,0,1);glayout-addWidget(qpushbuttongetfilename,0,2);glayout-addWidget(labelfilesize,1,0);glayout-addWidget(qlineeditfilesize,1,1,1,2);glayout-addWidget(labelfilecreatetime,2,0);glayout-addWidget(qlineeditfilecreatetime,2,1,1,2);glayout-addWidget(labelfilemodifytime,3,0);glayout-addWidget(qlineeditfilemodifytime,3,1,1,2);glayout-addWidget(labelfileaccesstime,4,0);glayout-addWidget(qlineeditfileaccesstime,4,1,1,2);// 水平布局QHBoxLayout *hlayoutnew QHBoxLayout;hlayout-addWidget(qlabelfileattribute);hlayout-addStretch();QHBoxLayout *hlayoutatnew QHBoxLayout;hlayoutat-addWidget(qcheckboxisfile);hlayoutat-addWidget(qcheckboxishide);hlayoutat-addWidget(qcheckboxisreadable);hlayoutat-addWidget(qcheckboxiswritable);hlayoutat-addWidget(qcheckboxisexecute);QHBoxLayout *hlayoutgetbtnnew QHBoxLayout;hlayoutgetbtn-addWidget(qpushbuttongetfileattributeinfo);// 垂直布局QVBoxLayout *vlayoutnew QVBoxLayout(this);vlayout-addLayout(glayout);vlayout-addLayout(hlayout);vlayout-addLayout(hlayoutat);vlayout-addLayout(hlayoutgetbtn);// 信号与槽函数连接connect(qpushbuttongetfilename,SIGNAL(clicked()),this,SLOT(getfilepathandname()));connect(qpushbuttongetfileattributeinfo,SIGNAL(clicked()),this,SLOT(getfileattributeinfo())); }GetFileInfo::~GetFileInfo() { }void GetFileInfo::getfilepathandname() {QString filepathname;filepathnameQFileDialog::getOpenFileName(this,打开文件对话框,/,files(*));qlineeditfilename-setText(filepathname);}void GetFileInfo::getfileattributeinfo() {QString strfileqlineeditfilename-text();QFileInfo qfi(strfile);qint64 filesizeqfi.size(); // 获取文件容量大小QDateTime createtimeqfi.created(); // 文件创建时间QDateTime lastmodifytimeqfi.lastModified(); // 最后修改时间QDateTime lastaccesstimeqfi.lastRead(); // 最后访问时间bool bfileqfi.isFile();bool bhideqfi.isHidden();bool breadqfi.isReadable();bool bwriteqfi.isWritable();bool bexecuteqfi.isExecutable();qlineeditfilesize-setText(QString::number(filesize));qlineeditfilecreatetime-setText(createtime.toString());qlineeditfilemodifytime-setText(lastmodifytime.toString());qlineeditfileaccesstime-setText(lastaccesstime.toString());qcheckboxisfile-setCheckState(bfile?Qt::Checked:Qt::Unchecked);qcheckboxishide-setCheckState(bhide?Qt::Checked:Qt::Unchecked);qcheckboxisreadable-setCheckState(bread?Qt::Checked:Qt::Unchecked);qcheckboxiswritable-setCheckState(bwrite?Qt::Checked:Qt::Unchecked);qcheckboxisexecute-setCheckState(bexecute?Qt::Checked:Qt::Unchecked);} getfilefo.h #ifndef GETFILEINFO_H #define GETFILEINFO_H#include QDialog#include QLabel #include QLineEdit #include QCheckBox #include QPushButton#include QFileDialog // 引用文件对话框 #include QDateTime #include QHBoxLayout #include QVBoxLayoutclass GetFileInfo : public QDialog {Q_OBJECTpublic:GetFileInfo(QWidget *parent nullptr);~GetFileInfo();private:QLabel *labelfilename;QLineEdit *qlineeditfilename;QPushButton *qpushbuttongetfilename;// 文件容量大小QLabel *labelfilesize;QLineEdit *qlineeditfilesize;// 文件创建时间QLabel *labelfilecreatetime;QLineEdit *qlineeditfilecreatetime;// 文件修改时间QLabel *labelfilemodifytime;QLineEdit *qlineeditfilemodifytime;// 文件访问时间QLabel *labelfileaccesstime;QLineEdit *qlineeditfileaccesstime;// 文件属性及复选控件QLabel *qlabelfileattribute;QCheckBox *qcheckboxisfile;QCheckBox *qcheckboxishide;QCheckBox *qcheckboxisreadable;QCheckBox *qcheckboxiswritable;QCheckBox *qcheckboxisexecute;QPushButton *qpushbuttongetfileattributeinfo;// 声明槽函数 private slots:void getfilepathandname();void getfileattributeinfo();}; #endif // GETFILEINFO_Hmain.cpp #include getfileinfo.h#include QApplicationint main(int argc, char *argv[]) {QApplication a(argc, argv);GetFileInfo w;w.show();return a.exec(); }
http://www.dnsts.com.cn/news/75264.html

相关文章:

  • 深圳市官网网站建设平台互联网网站基础
  • 山西网站建设多少钱该如何与网站设计公司沟通
  • 个人可以建门户网站吗p2p网站建设公司排名
  • 电子商务网站建设的参考文献系统门户网站建设常用功能
  • 网站后台开发费用手机活动网站模板
  • 青海建设工程信息网站坯子库登录成wordpress
  • 做恒生指数看什么网站做网站网上接单
  • 网站字体大连爱得科技网站建设公司怎么样
  • 网站的设计思路怎么写如何给wordpress文章部分内容加密
  • 郑州直播网站建设网站上传的流程图
  • 网站开发属于计算机系统开发吗wordpress挂黑页
  • 山东前网站建设成都住建局官网网上办事大厅
  • 网站入口东莞市企业信息公示网
  • 房天下官方网站那个网站可以做视频app制作的
  • 上海网站开发哪里有文字logo设计生成器
  • 杭州响应式网站案例杭州建设项目审批网站
  • html做网站需要服务器吗网站建设公司对比分析报告
  • 河南做网站推广网络营销课程设计计划书
  • 网站设计流行趋势wordpress网站网页加密
  • 性价比最高网站建设电话微商小程序制作
  • 网站建设部打码网站怎么做接口
  • 短视频素材下载网站 免费为什么百度搜出来的网站只有网址没有网站名和网页摘要.
  • 商城推广软文范文页面优化算法
  • asp.net网站安装顺序动漫制作专业有哪些职业岗位
  • 网站制作需要什么知识响应式网站开发视频
  • 免费追剧网站wordpress子页面密码
  • 建网站软件 优帮云网站备案的网站名称
  • 提高整个网站权重定期做图书推荐的网站
  • 网站安全建设进展情况做外贸的社交网站
  • 为审核资质帮别人做的网站wordpress 蛋花