[英]Unable to Open .txt File
std::ifstream infile;
infile.open("example.txt");
if (!infile.is_open()) {
std::cout << "can't open" << std::endl;
}
我讀到: 無法打開文件流 c++並嘗試使用完整路徑infile.open("~/projects/example.txt");
文本文件位於.cpp
/ .hpp
文件所在的同一文件夾中。
還有什么問題?
嘗試“realpath ~/projects/example.txt”,它會顯示你文件的真實路徑,然后在你的cpp中使用這個真實路徑
我曾經在 Windows 上遇到過同樣的問題。 問題是實際的文件名是“example.txt.txt”,但窗口資源管理器(默認情況下)被配置為隱藏文件擴展名。
一個簡單的解決方案是使用 c++17 文件系統庫。 例如, current_path
將返回其名稱所承諾的內容。 或者編寫一個簡單的函數來列出當前路徑內容(參見 cppreference 上的示例, https: //en.cppreference.com/w/cpp/experimental/fs/directory_iterator)。 或者創建一個類似名稱的文件,例如__example__.txt
並查看它的創建位置以及文件系統管理器報告的名稱。
如果這是 Linux,請嘗試在strace
( strace myprog myoptions
) 下運行您的程序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.