【问题标题】:Writing to a file - file not created in Visual Studio 2015 (fstream)写入文件 - 未在 Visual Studio 2015 (fstream) 中创建的文件
【发布时间】:2016-11-09 08:52:58
【问题描述】:

我检查了我当前的工作目录

(C:\Users\Ada\Documents\Visual Studio 2015\Projects\ProjektPO\ProjektPO)

并尝试在那里创建一个新文件,但我没有工作。没有错误,只是不会创建文件。

这是我的代码:

(#include<fstream>)



    fstream file;
    file.open("C:\Users\Ada\Documents\Visual Studio 2015\Projects\ProjektPO\ProjektPO\file.txt");
    for (unsigned int i = 0; i < cass.size(); i++)
    {
        file << cass[i]->name << ";" << cass[i]->debt << endl;
    }
    file.close();
    system("pause");

有什么建议吗?

【问题讨论】:

  • 反斜杠是转义字符。使用正斜杠、双反斜杠或原始字符串。
  • 我找不到此问题的重复项。 必须有一个。
  • 引号中的反斜杠通常表示dos文件路径(而不是unix),因此严格来说应该是正确的,假设您使用的是windows(假设它是dos'legacy'。要在字符串文字中使用这些,您可以使用双反斜杠来“转义”,例如“C:\\mypath”
  • 我尝试同时使用双反斜杠和正斜杠,但它并没有改变任何东西。我还尝试以管理员身份运行 .exe 文件并将项目移动到 E:\\ 驱动器,但这些都不起作用。
  • 我更改了:“fstream 文件;”进入“ofstream 文件;”它有效

标签: c++ visual-studio visual-studio-2015 fstream


【解决方案1】:

据我所知,您需要添加以下内容: ios::in | ios::out 因为默认情况下只使用 ios::in

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-02-17
    • 1970-01-01
    • 2016-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-14
    相关资源
    最近更新 更多