簡體   English   中英

無法創建.txt文件並在C ++中寫入?

[英]Fail to create a .txt file and write to it in C++?

在我的一個函數(由main()調用main() ,我有以下非常簡單的測試片段。

ofstream outFile;
outFile.open("C:\\Program Files\\data\\test.txt");
outFile << "test\n";
outFile.close();

運行代碼后,我沒有看到文件出現。 為什么會這樣?

不幸的是,C ++沒有指定任何方法來獲得更詳細的錯誤。 請參閱獲取std :: fstream失敗錯誤消息和/或異常

但是特定於平台的界面應該可行。 在每次操作之后檢查outFile.bad()是否為true,檢查GetLastError() 根據文檔中的適當表格或使用FormatMessage


我懷疑問題是權限。 Windows Vista引入了這種“用戶訪問控制”,當程序想要執行需要管理員權限的操作時,即使當前用戶擁有它們,也應該彈出對話框。 問題是對話框僅在某些條件下彈出。 值得注意的是,它不會彈出控制台應用程序,並且應用程序立即被拒絕權限。 此類應用程序必須“以管理員身份”明確執行。 當然不要忘記能夠編寫特定文件並不意味着能夠創建新文件。

暫無
暫無

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

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