写/读内存流中的内容,而不是c++中的文件流



我想将内容写入和读取到内存流而不是任何文件流比如fstream, ifstream或者ofstream。因此,所有应该写入文件的内容都应该在内存中,以便可以轻松快速地传输。

我如何在c++中实现这个?

我想说的是:-我将打开ofstream并在它保存和关闭之前开始写入文件中的内容,我想读取StringStream中添加的所有内容,如下所示。最后,我所有的内容都在我的字符串流中,文件不会被创建,因为我不会使用out.close()。

ofstream fout(FileWritePath, ios_base::out);
fout << "Blahh Blahh.....nn";
fout << "Name: Abhishekn";
fout << "Age: 43";
stringstream Readbuffer;
Readbuffer << fout.rdbuf();
string ReadFullstring = Readbuffer.str();
cout << ReadFullstring << endl;

你回答了自己的问题:如果您想将值存储在某些数据结构中,其行为类似于文件流,请使用stringstream(来自sstream-包):

std::ostringstream buf;
buf << "Blahh Blahh.....nn";
buf << "Name: Abhishekn";
buf << "Age: 43";
std::cout << buf.str() << std::endl;

然后,将按照预期生成:

Blahh Blahh.....
Name: Abhishek
Age: 43

Godbolt

最新更新