QT QString根据路径获取文件名称以及所在文件夹等信息

    xiaoxiao2021-03-25  121

    做项目的时候,需要从QString保存的文件完整路径中提取出文件名称以及其所在的文件夹,当然通过字串的查找截取也可以很快的实现信息的获取,但是既然QT的QString已经提供了这种方法,就不去自己造轮子了。通过QString保存的路径获取文件名称等信息需要用到QT的QFileInfo这货,下面是相关的信息。

    QFileInfo的构造函数:

    1 2 3 4 5 QFileInfo ( ) QFileInfo (  const QString &file ) QFileInfo (  const QFile&file ) QFileInfo (  const QDir&&dir,  const QString&file ) QFileInfo (  const QFileInfo& fileinfo )

    一般简单的用法

    1 2 3 4 5 QString  qpath= "/usr/test.bin" ; QFileInfo fileInfo(qpath); //或者先构造对象,然后setfile操作 QFileInfo fileInfo; fileInfo.setFile(qpath)

    常用的几个接口

    01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 //判断这个路径对应的文件是否存在,true表示存在,false表示不存在 bool   exists(); //根据路径获取到文件的大小,返回值是int64类型,单位为Byte qint64 size(); //获取到文件的路径,QFile与之对应的操作 QString path(); //获取到包含文件名称的路径 QString filePath(); //获取文件名称 QString fileName();   //是否是文件 bool isFile(); //是否是路径。 bool isDir(); //是否是符号链接。 bool isSymLink(); //获取符号链接文件 QString symLinkTarget();

    一个通过QString获取文件信息的简单例子

    01 02 03 04 05 06 07 08 09 10 11 12 13 14 QString qpath= "/usr/test.xxx.yyy" ; QFileInfo fileInfo(qpath); //获取文件的不包含文件名的路径,返回值为 “/usr” fileInfo.path(); //获取到文件的名称,返回值为 “test.xxx.yyy” fileInfo.fileName(); //返回 test,不含后缀 fileInfo.baseName(); //返回 "test.xxx" fileInfo.completeBaseName(); //返回 "yyy" fileInfo.suffix(); //返回 "xxx.yyy" fileInfo.completeSuffix();

    转载请注明:悠然品鉴 » QT QString根据路径获取文件名称以及所在文件夹等信息

    转载请注明原文地址: https://ju.6miu.com/read-20049.html

    最新回复(0)