【发布时间】:2021-03-26 12:00:51
【问题描述】:
我想使用存储输入数据并从文件 input.txt 读取数据的文件编写代码。我正在编写这段代码来解析输入数据。代码运行良好,没有出现错误,但是当我查看文件 input.txt 时,它没有显示我输入的数据。请帮忙。
#include <fstream>
#include <string>
#include <iostream>
using namespace std;
int main()
{
string str;
ofstream out("input.txt");
getline(cin,str);
out<<str;
ifstream in("input.txt");
getline(in,str);
cout<<str;
}
我刚刚意识到我的计算机有问题,因为我在另一台计算机上尝试了相同的代码并且它可以工作
【问题讨论】:
-
"代码运行良好,没有出现错误" 但是您没有检查任何故障:所以,当然,它没有显示任何错误。例如:你没有检查是否有文件打开成功,或者
getline是否成功。 -
您应该先关闭文件流,然后再重新打开它以供阅读。在您创建
ifstream之前,在您的流周围放置一些花括号或调用out.close() -
您有两个流——一个输入和一个输出——同时打开。让生活更简单。在打开输入流之前关闭输出流。
-
@Timo @R Sahu 我确实关闭了 ofstream 但输入没有保存在 input.txt 中
-
@tadman 哦,我不知道。感谢您提供信息。