簡體   English   中英

使用ifstream和QtCreator從當前目錄中讀取文件

[英]Read a file from current directory using ifstream and QtCreator

我正在使用Qt Creator進行沒有Qt庫的普通C ++項目。

我正在嘗試打開這樣的文件:

fopen("text.txt", "r");

要么

ifstream fin;
fin.open("text.txt");

但它不能像Visual Studio中那樣只使用文件名,我必須通過它的完整路徑來打開文件...

誰知道為什么會這樣? 如何在不使用Qt庫的情況下引用當前目錄?

您可以使用QDir::current()來檢查工作目錄是否是您想要的。 沒有Qt,您可以使用TomA鏈接的解決方案

運行設置允許您配置它以從IDE運行應用程序。

它會; 你的代碼很好。 但正如其他答案所暗示的那樣,您需要確保在您認為自己的目錄中運行它。

在左側面板中選擇“Projects”,然后選擇(從頂部的選項卡)“Run Settings”,它將在標記為“Working directory”的字段中顯示它運行可執行文件的位置。 我認為默認情況下它是發布和調試文件夾上方的目錄。

Visual Studio和Qt Creator之間的區別可能就是這樣

  1. 每個都在項目結構的不同子目錄中啟動程序二進制文件。
  2. 一個人將text.txt文件作為項目的一部分復制到與二進制文件相同的輸出目錄,另一個不復制。

嘗試使用目錄獲取當前目錄,然后查看它是否實際包含該文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM