1

std::ostream*我有一个外部库,它能够通过传递一个指针来写入一堆数据。它以二进制格式写入

我想将此数据写入包含其他内容的文本文件中,方法是将其转换为十六进制或 base64。

由于lib写入的数据可能非常大,我想避免将数据写入内存缓冲区,然后转换为文本格式。我想即时转换。

因此,我正在寻找如何为此重载 std::streambuf 。我需要重载overflow虚函数,我找到了必要的信息。

问题是,我应该写入文件ostream还是直接写入streambuf我可以使用的文件rdbuf()?是否允许直接写入 a stream stringbuf

提前致谢!

4

0 回答 0