首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果流是可以的,但是Ofstream不能在Visual (C++)(WIN11)中工作

如果流是可以的,但是Ofstream不能在Visual (C++)(WIN11)中工作
EN

Stack Overflow用户
提问于 2022-11-29 08:26:18
回答 1查看 49关注 0票数 -1

当我编写一个简单的ofstream和ifstream实例时,ifstream正在工作,而ofstream则不起作用。当我运行这个程序的流正在创建,但我没有看到output.txt目录文件。我试着关闭COMODO防病毒,但问题仍然存在。是什么阻止我看到输出文件?

在这里,我的First.cpp:

代码语言:javascript
复制
#include <iostream>
#include <fstream>

using namespace std;

int main()
{
    ofstream output("output.txt");
    ifstream input("input.txt");
    if (output.is_open()) {
        cout << "ouput file is open" << endl;
        output << "hi";
    }
    else {
        cout << "output file is not open" << endl;
    }
    int number;
    if (input.is_open()) {
        cout << "input file is open" << endl;
        input >> number;
        cout << "Number:" << number << endl;
    }
    else {
        cout << "input file is not open" << endl;
    }
    input.close();
    output.close();
    return 0;
}

在这里,我的input.txt:

代码语言:javascript
复制
21
12
22
23
32

当我运行这个程序时:

代码语言:javascript
复制
ouput file is open
input file is open
Number:21
EN

回答 1

Stack Overflow用户

发布于 2022-11-29 10:24:15

我知道这个问题与你的防病毒有关,但我会写这个给其他人阅读。

在处理IO时,重要的是要知道您的可执行文件将从哪个目录执行。可以在项目配置中设置工作目录。右键单击项目>属性>配置属性>调试>工作目录配置窗口

工作目录也是生成所有应用程序创建文件的目录。例如,示例代码在项目工作目录中生成output.txt

代码语言:javascript
复制
std::ofstream output("output.txt");
if (!output.is_open())
return -1;

std::cout << "file is open" << std::endl;
output << "Hello there!";
output.flush();
output.close();

项目目录屏幕截图

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74611050

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档