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

来源:互联网 发布:php二次开发是什么 编辑:程序博客网 时间:2024/06/05 14:56

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

QFileInfo的构造函数:

1
2
3
4
5
QFileInfo ( )
QFileInfo ( constQString &file )
QFileInfo ( constQFile&file )
QFileInfo ( constQDir&amp&dir, constQString&file )
QFileInfo ( constQFileInfo& 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();
 
//是否是文件
boolisFile();
//是否是路径。
boolisDir();
//是否是符号链接。
boolisSymLink();
//获取符号链接文件
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根据路径获取文件名称以及所在文件夹等信息

0 0
原创粉丝点击