Qt随笔 - QFileInfo的各种超坑函数

Qt.io的新主页背景

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”

唉,无语中……

很强大,很丰富,很多坑……

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容