先上代碼
QString local=QString("file:///%1").arg(filePath);
QUrl url(local);
QDesktopServices::openUrl(url)
上面這段代碼在一般情況下是不會出問題的,可以將路徑為filePath的文件打開,但是當(dāng)路徑中包含“%20”時(比如說這個文件是從服務(wù)器下載的,文件名中的空格被自動轉(zhuǎn)換成了“%20”),這樣是無法打開該文件的。
應(yīng)該改成如下形式
QDesktopServices::openUrl(QUrl::fromLocalFile(filePath));
這樣類似“燦哥哥%20的博客.xlsx”的excel文件就能打開啦。