在Qt编写的程序中打开文件夹

    我们知道在dos命令行中可以用"start explorer 地址"的格式打开指定的文件夹。在编程中使用system函数然后再调用前面那句,虽然可以打开指定文件夹,但是总会有dos的黑框闪过,很不美观。

    下面讲讲在Qt中我使用的方法。以打开程序当前目录为例。这里要用到QProcess类中的静态函数startDetached:

    QString path=QDir::currentPath();//获取程序当前目录
    path.replace("/","\\");//将地址中的"/"替换为"\",因为在Windows下使用的是"\"。
    QProcess::startDetached("explorer "+path);//打开上面获取的目录
    注意,在QProcess类中还有个start()函数,也可以用于启动程序。但是在这里不能用。因为explorer是系统正在运行的程序,而start()函数不会重复运行正在运行的程序,也就无法打开文件夹了。

你可能感兴趣的:(编程,windows,dos,System,qt,Path)