9得票2回答
即使在二进制模式下,std::ofstream仍然会写入\r。

我正在尝试使用std :: ofstream()编写UTF-16编码的文件。即使在二进制模式下,写入"\n\0"也会被写成"\r\n\0"。示例代码: std::string filename = ... std::ofstream fout(filename, std::ios_base:...

7得票1回答
更改或检查std::ofstream的打开模式

在使用std::ofstream进行大量文件输入/输出的某些代码中,我为了提高效率而进行了流缓存。但是,有时我需要更改文件的打开模式(例如,追加还是截断)。以下是一些类似的模拟代码: class Logger { public: void write(const std::strin...

8得票2回答
当将std::ofstream作为参数传递时,为什么要使用“已删除”的函数?

我有一个成员是std::ofstream fBinaryFile,还有一个 void setFile( std::ofstream& pBinaryFile ) { fBinaryFile = pBinaryFile; } 输出: Data.h:86:16: err...

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

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

10得票3回答
为什么在“std”中添加了“ifstream”和“ofstream”,而“fstream”可以同时实现这两个目的?

使用 `std::fstream` 可以声明两种类型的对象:`ifstream` 和 `ofstream`。唯一的区别是,在 `fstream` 中我们需要将 `in`、`out`、`app` 作为参数提供,而在其他两个类型中并不总是需要。关于 `ifstream`、`ofstream` 是否...

86得票3回答
我需要关闭一个std::fstream吗?

可能是重复问题: 我需要手动关闭 ifstream 吗? 我是否需要调用fstream.close()方法,或者fstream是一个合适的RAII对象,在销毁时会自动关闭流? 我在一个方法中有一个本地的std::ofstream对象。如果在退出这个方法后没有调用close方...

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

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

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

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

15得票4回答
在函数中返回 ifstream

这里有一个可能非常新手的问题:如何(如果可能的话)从函数中返回一个 ifstream? 基本上,我需要从用户那里获取数据库的文件名,如果该文件名对应的数据库不存在,则需要为用户创建该文件。我知道如何做到这一点,但是只能通过要求用户在创建文件后重新启动程序来实现。如果可能的话,我想避免给用户带...

20得票2回答
在写入数据时,std::ofstream中的错误处理

我有一个小程序,其中我初始化了一个字符串并将其写入文件流:#include<iostream> #include<fstream> using namespace std; int main() { std::ofstream ofs(file.c_str()); ...