Присоединение к существующему файлу через boost

Мне нужно объединить много файлов журнала в один журнал.

Я пытался сделать это с boost::filesystem::copy_file, но он не поддерживает добавление.

Есть идеи? (Я предпочитаю делать это через библиотеки повышения)

Tnx

1 ответ

Решение

Вам не нужно Boost для этой простой задачи - стандарт iostream сделаем работу:

#include <fstream>
//...
using std::ifstream;
using std::ofstream;
ifstream input1("input1.log"), input2("file2.log");
// append to an existing file
ofstream output("output.log", ofstream::out | ofstream::app);
output << input1.rdbuf() << input2.rdbuf();
//...

(Тем не менее, обратите внимание, что описанный выше подход может иметь неоптимальную производительность; посмотрите на этот ответ, чтобы узнать, как повысить производительность.)

Другие вопросы по тегам