QFileInfo是一站式超大型编程函数主业GUI超市Qt提供的一个可以访问文件信息属性的class,但是笔者最近在使用QFileInfo时对面前屡屡闪现的十分相同的函数疑惑不解,终于今天查了一下Doc,真相大白……
先看看路径类的吧!
- QFileInfo::path()
QString QFileInfo::path() const
看起来十分的单纯,而且与预料中的一样,殊不知,这个函数的确是返回file's path,但是后面跟了一句“This doesn't include the file name.”,啊~~,仰天长啸……
栗子:
QFileInfo info(“D:\UserData\hello.exe”);
info.path();
//Return the path like “D:\UserData”
所以这个是返回文件的路径但不包含文件名
- QFileInfo::filePath()
QString QFileInfo::filePath() const
这又是什么鬼?!
栗子:
QFileInfo info(“D:\UserData\hello.exe”);
info.filePath();
//Return the path like “D:\UserData\hello.exe”
所以这个是返回文件的路径也包含文件名,再次仰天长啸~
- QFileInfo::fileName
QString QFileInfo::fileName() const
终于把路径类的函数看完了,现在开始文件名类啰
栗子:
QFileInfo info(“D:\UserData\hello.exe”);
info.fileName();
//Return the path like “hello.exe”
所以是返回文件名啦
- QFileInfo::baseName
QString QFileInfo::baseName() const
好吧,我承认不知道基本(base)和普通的差别
栗子:
QFileInfo info(“D:\UserData\hello.exe”);
info.baseName();
//Return the path like “hello”
- QFileInfo::completeBaseName
QString QFileInfo::completeBaseName() const
是不是已经头晕眼花,四肢无力,两眼昏昏,几欲先走?
别忙,还有!
栗子:
QFileInfo info(“D:\UserData\hello.tar.gz”);
info.fileName();
//Return the path like “hello.tar”
笔者也不知如何描述,看栗子,自悟吧……
- QFileInfo::suffix
QString QFileInfo::suffix() const
suffix译为“后缀名”,所以——
QFileInfo info(“D:\UserData\hello.tar.gz”);
info.fileName();
//Return the path like “gz”
返回后缀名
- QFileInfo::completeSuffix
QString QFileInfo::completeSuffix() const
跟QFileInfo::completeBaseName
差不多吧
大侠请看!
QFileInfo info(“D:\UserData\hello.tar.gz”);
info.fileName();
//Return the path like “tar.gz”
唉,无语中……
很强大,很丰富,很多坑……