簡體   English   中英

無法打開 .txt 文件

[英]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.

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