【发布时间】:2020-09-02 21:08:02
【问题描述】:
这是我关于堆栈溢出的第一个问题,如果我搞砸了,请原谅我(笑) 编码语言:C++ IDE:代码::块 编译器:GNU GCC 操作系统:Windows
让我澄清一下: 这是我的代码:
#include <iostream>
#include <fstream>
int main() {
std::fstream fileObject;
std::string line;
fileObject.open("randomFile.txt");
fileObject << "Random text\n kjshjdfgxhkjlwkdgxsdegysh";
while (getline(fileObject, line) ) {
std::cout << line << "\n";
}
fileObject.close();
}
这不会产生任何错误,但是当我检查我的项目文件时,文件 randomFile 不存在,控制台屏幕上也没有出现任何文本。 但是,这段代码确实有效:
#include <iostream>
#include <fstream>
int main() {
std::ofstream fileObject;
fileObject.open("randomFile.txt");
fileObject << "Random text\n kjshjdfgxhkjlwkdgxsdegysh";
fileObject.close();
}
它创建文件并插入指定的文本... 我还有一个次要问题:如果我尝试创建一个同名的 ifstream 和 ofstream 对象,它会显示为一个错误,但我不知道如何制作它,以便我可以写入文件并从中读取它使用相同的代码...
【问题讨论】:
-
您是否检查了该文件是否出现在
Debug文件夹中(或创建.exe的位置)? -
你怎么知道没有错误?没有错误检查。各种各样的坏蓝精灵都可能发生,如果你不检查,你就不会知道。
-
我不确定你所说的终止输入是什么意思...
-
@fartgeek 这很可能不是问题所在,你
close()还是文件。 -
我确实检查了创建.exe的文件夹,那里什么都没有