1

std::ostream*ポインターを渡すことで大量のデータを書き込むことができる外部ライブラリがあります。バイナリ形式で書き込みます

このデータを、16 進数または base64 に変換して、他のデータを含むテキスト ファイル内に書き込みたいと考えています。

ライブラリによって書き込まれるデータは非常に大きくなる可能性があるため、データをメモリ バッファーに書き込むことを避け、テキスト形式に変換したいと考えています。その場で変換したいと思います。

したがって、その目的のために std::streambuf をオーバーロードする方法を探しています。overflow仮想関数をオーバーロードする必要があり、これに必要な情報を見つけました。

問題は、ファイルの に書き込むべきか、またはを使用して取得できるファイルostreamに直接書き込むべきかということです。に直接書き込むことはできますか?streambufrdbuf()stream stringbuf

前もって感謝します!

4

0 に答える 0