Qt中的默认文件夹路径获取方法

原文地址:http://m.blog.csdn.net/blog/jiezhj_tjsd/37560363
头文件:
1、#include <QDesktopServices>

2、#include <QApplication>

使用1:

    QTextCodec *codec = QTextCodec::codecForLocale();
    QTextCodec::setCodecForCStrings(codec);

    //获取开始菜单-》程序的路径
    qDebug()<<QDesktopServices::storageLocation(QDesktopServices::ApplicationsLocation);
    //获取cache路径
    qDebug()<<QDesktopServices::storageLocation(QDesktopServices::CacheLocation);
    //获取local路径
    qDebug()<<QDesktopServices::storageLocation(QDesktopServices::DataLocation);
    //获取桌面路径
    qDebug()<<QDesktopServices::storageLocation(QDesktopServices::DesktopLocation);
    //获取我的文档路径
    qDebug()<<QDesktopServices::storageLocation(QDesktopServices::DocumentsLocation);
    //获取字体路径
    qDebug()<<QDesktopServices::storageLocation(QDesktopServices::FontsLocation);
    //获取用户目录路径
    qDebug()<<QDesktopServices::storageLocation(QDesktopServices::HomeLocation);
    //获取模式视频存储路径
    qDebug()<<QDesktopServices::storageLocation(QDesktopServices::MoviesLocation);
    //获取默认音乐存储路径
    qDebug()<<QDesktopServices::storageLocation(QDesktopServices::MusicLocation);
    //获取默认图片存储路径
    qDebug()<<QDesktopServices::storageLocation(QDesktopServices::PicturesLocation);
    //获取临时文件路径(在windows下路径被替代)
    qDebug()<<QDesktopServices::storageLocation(QDesktopServices::TempLocation);
    qDebug()<<"----------------------------------------";
    //使用openUrl可以打开文件夹或者、可执行程序,与QProcess类似,但是没有QProcess功能强
    QString str = QDesktopServices::storageLocation(QDesktopServices::DesktopLocation);

    //打开带有空格、汉字的路径的程序
    QUrl url;
    //使用函数fromLoaclFile()格式化路径,否则打不开文件,或文件夹。
    //openUrl可以调用默认文件打开方式打开文件
    url =  QUrl::fromLocalFile(QString(str+"/")+QString("新建文   件夹 (3)/Setup_zesafe-2.0.exe"));
    qDebug() << url;
    //如果打开成功,关闭当前程序
    if(QDesktopServices::openUrl(url))
    {
        qApp->quit(); //qApp是个单实例
    }


使用2:

    QApplication::setApplicationName("jie");
    //获取应用程序所在文件夹路径
    qDebug()<<QApplication::applicationDirPath();
    //获取应用程序路径
    qDebug()<<QApplication::applicationFilePath();
    qDebug()<<QApplication::applicationName();

猜你喜欢

转载自blog.csdn.net/CLP_CSDNID/article/details/80285259