Qt 之打开系统文件管理器

打开文件管理器有两种方案:

1、使用 QProcess 调用win系统自带 explorer 程序打开

    //获取程序当前目录	
    QString path = "E:\\VS2015";

	QDir dir;
	QFileInfo fi(path);

	if ((fi.isDir() || dir.mkdir(path))) {
		//创建PC端对应文件夹
	}

    //将地址中的"/"替换为"\",因为在Windows下使用的是"\"。
	path.replace("/", "\\");

    //打开文件管理器路径
	QProcess::startDetached("explorer " + path);

	qDebug() << "onClickOpenFolder " << path;

2、使用 QDesktopServices 打开

	QDesktopServices::openUrl(QUrl("file:E:\\VS2015", QUrl::TolerantMode));
	QDesktopServices::openUrl(QUrl("file:E:\\2-SNwriter V1.20.20.0.0", QUrl::TolerantMode));
	QDesktopServices::openUrl(QUrl("file:X:\\Demo", QUrl::TolerantMode));

注:推荐带 file 的格式,不带 file 的格式(如下),无法打开含有空格和共享文件目录

    QDesktopServices::openUrl(QUrl(“E:\\VS2015”, QUrl::TolerantMode));

    原文作者:虫师魁拔
    原文地址: https://blog.csdn.net/tq501501/article/details/112361071
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞