2012-01-01 66 views
0

中的資源文件有關的困難時,我已將包含一些信息的txt文件添加到資源文件中。我以爲這個文件將被合併到exe文件中,我將不必提供這個文件與我的exe文件。現在我正在運行我的項目的這個exe文件,並且我得到的信息表明txt文件找不到(儘管通過Qt創建器運行時,一切正常)。有什麼辦法讓它工作,所以我不必提供這個txt文件與我的程序?
編輯:
資源文件:在使用Qt Creator和開發我的項目時,遇到與qt

<RCC> 
    <qresource prefix="/settings"> 
     <file>Resources/setting_files/accepted_file_extensions.txt</file> 
    </qresource> 
</RCC> 

而且我訪問它:

boost::filesystem3::ifstream fin("./Resources/setting_files/accepted_file_extensions.txt"); 
+2

http://developer.qt.nokia.com/doc/qt-4.8/resources.html - 至少閱讀文檔。 – Mat 2012-01-01 19:39:52

+0

@MAT感謝+1,會嘗試 – smallB 2012-01-02 11:13:14

回答

0

,當你在Qt Creator中運行,因爲工作目錄是你有你的資源文件夾它的工作原理。 Boost ifstream不會從您的exe文件讀取資源,而是從磁盤上讀取真實文件。 Boost不知道Qt資源(也不應該)。相反,使用QResource從您的exe文件讀取資源數據,或者使用QFile來讀取它,就好像它是一個文件(通過在:前加上路徑)。