memorystream - stringstream,string,others?

did*_*ito 6 c++ string buffer stl stream

我正在通过通常的c ++/STL/iostream语法读取二进制文件.我将整个内容复制到一个动态分配的char数组中,到目前为止工作正常.

但由于我想将部分内容作为行提供给程序的另一部分,我认为坚持使用流会更好/更容易,因为我不想破解cstring函数和指针.

我现在的问题是,如何将读取存储在内存中.在一个字符串流?还是在一个字符串?哪个更合适?一个优于另一个有什么优点或缺点吗?

提前致谢!

Jer*_*fin 4

如果你想以流的形式读取它,你不妨直接从文件读取到字符串流:

std::stringstream data;
data << input_file.rdbuf();
Run Code Online (Sandbox Code Playgroud)

它将“input_file”的全部内容读入“data”。您可以像读取任何其他流一样从那里读取数据。