Clion中C++使用當前目錄讀取檔案失敗
問題
在使用 Clion編譯執行C++時,程式從檔案中讀取輸入資料,使用 freopen 重定向輸入,一直沒有讀取到資料,execute.txt
檔案放在cpp檔案同級目錄下:
freopen("./execute.txt", "r", stdin);
原因:
在Clion中,cpp原始檔經編譯後生成可執行檔案,放在 cmake-build-debug
目錄下,也就是最終的執行目錄,所以檔案相對路徑應該是 ../
解決辦法:
1.使用絕對路徑
使用檔案絕對路徑,讀取檔案一般不會出問題,例如
freopen("/Users/usr/workspace/ClionProjects/untitled/execute.txt", "r", stdin);
2.使用相對路徑
使用相對路徑的話,就是要確定待讀取檔案目錄和編譯之後生成的可執行檔案目錄。
如果把待讀取檔案放到 cmake-build-debug
目錄,直接執行
freopen("./execute.txt", "r", stdin);
如果把待讀取檔案放在cpp檔案同級目錄下,則程式執行時需要在父級目錄找待讀取檔案
freopen("../execute.txt", "r", stdin);
相關文章
- windows 把指定目錄的檔案複製到當前目錄Windows
- Linux檢視當前目錄下的檔案大小Linux
- Linux C獲取當前工作目錄Linux
- ENVI匯出的tif檔案,python讀取失敗。Python
- Centos下檢視當前目錄大小及檔案個數CentOS
- 刪除當前目錄下的所有可執行檔案
- git將當前目錄下所有檔案納入跟蹤Git
- Android中讀取assets目錄下的檔案詳細介紹Android
- kodbox讀取alist檔案失敗,問題解決過程
- IDEA如何快速定位到當前開啟檔案所在的目錄Idea
- win10怎麼獲取當前目錄_win10系統如何快速獲取檔案路徑Win10
- PHP超低記憶體遍歷目錄檔案和讀取超大檔案PHP記憶體
- Spring Boot讀取外部配置檔案失敗,原因絕對出乎你意料Spring Boot
- linux 統計當前目錄下檔案或者資料夾的數量Linux
- opencv-python 讀取同一目錄的多個檔案OpenCVPython
- jmeter 引數化 csv外掛的讀取檔案 bin目錄JMeter
- 檔案或目錄損壞且無法讀取怎麼辦?
- C/C++讀取SEGY檔案(三)C++
- 獲取Linux系統中目錄檔案大小的方法Linux
- win10 讀取檔案錯誤怎麼辦 win10讀取文件失敗什麼原因Win10
- 引入js檔案失敗JS
- Python如何獲取當前執行檔案路徑?Python
- 獲取當前js檔案被引用的路徑JS
- PostgreSQL啟動恢復讀取checkpoint記錄失敗的條件SQL
- 雙擊時它說“檔案或目錄損壞且無法讀取"
- nodejs獲取檔案資訊,判斷是檔案或目錄NodeJS
- 【Linux命令】在當前目錄下查詢出現特定字串的檔案位置資訊Linux字串
- java中讀取配置檔案Java
- rz檔案傳輸失敗
- CF卡讀取失敗修復方法?
- 如何使用Rust查詢目錄中的所有 txt 檔案?Rust
- windows powershell 如何讀取大檔案前10行Windows
- 在 Linux 中如何歸檔檔案和目錄Linux
- Golang專案中讀取配置檔案Golang
- py目錄下獲取指定字尾檔案打包成zip檔案
- git獲取當前所在的目錄Git
- 記錄一次刪除檔案失敗的問題
- 使用yaml檔案讀取資料YAML