14得票7回答
将cout分配给一个变量名

在 ANSI C++ 中,如何将 cout 流分配给一个变量名?我想要做的是,如果用户指定了输出文件名,则将输出发送到该文件,否则将其发送到屏幕。因此,类似于以下内容:ofstream outFile; if (outFileRequested) outFile.open("foo....

13得票3回答
你能安全地关闭一个从未被打开的文件吗?

如果我有一个可能已经打开或未打开的 std::ofstream,尝试关闭是否安全?换句话说,如果 !is_open(),close() 会发生什么不好的事情(抛出异常等)?例如:std::ofstream out; if (some_condition) { out.open(path...

13得票3回答
文件流异常处理

我有一个写入文件的方法,因此我尝试处理写入已关闭文件的异常情况: void printMe(ofstream& file) { try { file << "\t"+m_Type+"\t"+m_Id";"+"\n";...

13得票5回答
ofstream不刷新缓冲区

我有以下代码,在Suse 10.1 / G++ 4.1.0上运行,但它不会写入文件:#include <fstream> #include <iostream> int main(){ std::ofstream file("file.out"); f...

13得票2回答
C++中的ostream和ofstream转换

我的代码中有一个ostream对象,它由各个模块累积,并最终显示在控制台上。我还想将这个ostream对象写入文件,但是我必须使用一个ofstream对象重新编写所有代码吗?或者是否有一种方法将其转换为另一个对象(例如通过stringstream)? 例如,我的许多现有函数看起来像:ostre...

12得票2回答
创建一个 ofstream 向量。

我试图创建一个ofstream向量..vector<ofstream> streams; for (int i = 0; i < numStreams; i++){ ofstream out; string fileName = "text" + to_string(...

11得票3回答
如何在C++中向文件的中间写入内容?

我认为这应该很简单,但我的谷歌搜索没有帮助到我... 我需要在C++中写入一个已存在的文件,但不一定要写在文件末尾。 我知道当我只想将文本附加到文件时,我可以在调用流对象的open时传递标志ios:app。然而,这仅允许我写入文件的末尾,而不是其中间的位置。 我编写了一个简短的程序来说明这...

11得票4回答
我该如何让一个 ostream 引用指向一个 ofstream?(C++)

我正在尝试制作一个简单的记录器类,并且我希望能够将日志记录到普通的ostream (cout/cerr)或文件中。我设想的设计是允许构造函数接受ostream&或文件名,在后一种情况下创建一个ofstream&并将其分配给类的私有ostream&,如下所示:class ...

11得票4回答
检查 ostream 对象是否为 cout 或 ofstream,c++

在C++中,有没有一种方法可以检查ostream对象是cout还是ofstream对象? 例如: ostream& output(ostream& out) { if (out == cout) return out; else { ...

11得票1回答
为什么std::ofstream在没有使用std::ios_base::trunc的情况下会截断文件?

根据这个 C++ 参考文献:http://www.cplusplus.com/reference/fstream/ofstream/ofstream/,std::ofstream 的默认打开模式是 ios_base::out,并且没有其他隐式模式。因此,如果我用一个小文件覆盖一个大文件,大文件...