【**:
在專案中我們經常會遇到檔案路徑問題,如qfile file(「text.txt」)載入不成功、qpixmap("…/1.bmp") 載入影象不成功等問題。
在能成功載入檔案、影象之前,我們必須要弄清楚兩個概念:絕對路徑和相對路徑
絕對路徑:檔案在硬碟上真正存在的路徑。如qpixmap("…/1.bmp")這個是存放在系統的使用者路徑下,即:
這就是檔案的絕對路徑。
相對路徑:由這個檔案所在的路徑引起的跟其它檔案(或資料夾)的路徑關係
如當前file1的路徑是/user/file/file1/file1.txt,
file2的路徑是/user/file/file2/file2.txt
那麼file2相對於file的路徑就是「…/file2/file2.txt」。
相對路徑裡常使用「…/」來表示上一級目錄
弄清楚絕對路徑和相對路徑的概念後,再來弄清楚我們常用到的" ? 「與」 ./ "
./: 表示當前路徑, 如「./log/log1.txt」 表示當前路徑下的log目錄下 的log1.txt
?: 表示對資源的引用,引用資源檔案路徑,如「:/image/start.png」表示資源檔案裡面定義的檔案start.png影象
明確以上概念之後,我們就可以明確檔案路徑怎樣設定才能載入成功。
(這個類似於「./」操作)
qstring currentpath;
qdir dir;
currentpath=dir.currentpath();
qdebug()<
qdir temdir("…/…/image.png");
qstring filepath = temdir.absolutepath();
這樣就獲得了乙個檔案的絕對路徑了。:(
);qdebug()
<<:>
);qdebug()
<<
qstring currentpath;
qdir dir;
currentpath = dir.
currentpath()
;qdebug()
<<
"currentpath = "
<< currentpath;
qstring absolutepath = dir.
absolutepath()
;qdebug()
<<
"absolutepath = "
<< absolutepath;
QT檔案路徑問題
在程式設計中發現qt檔案讀取路徑與vs有不同之處。我們提供給qfile的檔案路徑無非就是絕對路徑和相對路徑。絕對路徑是絕對沒問題的 談到相對路徑,需要注意區分程序所在 當前工作目錄 和 程式所在目錄 vs中工作目錄是在你所建工程的cpp元檔案所在目錄中,而qt creator確實在你程式.exe檔案...
Qt 檔案路徑
相對路徑 資源檔案路徑 參考 qt 路徑問題小結 qt 程式構建完後會生成乙個構建資料夾,命名格式以 build 專案檔名 開頭。以qt5.8中自帶例子 frozencolumn 為例,構建資料夾名為build frozencolumn desktop qt 5 4 2 msvc2012 openg...
QT 標頭檔案路徑識別問題。
我在ubuntu10下編譯了pc,arm,x86三個qt版本,在pc版本下,qt的標頭檔案能正確識別。可在x86和arm版本下就不可以。而檢查環境,竟然沒有問題。很是鬱悶。我是在project檔案裡加入以下三行。includepath qt install headers includepath q...