QT檔案路徑問題

2021-09-02 22:05:59 字數 1382 閱讀 2438

【**:

在專案中我們經常會遇到檔案路徑問題,如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...