Запись в середину существующего двоичного файла c ++

Я пытаюсь открыть двоичный файл для записи без стирания содержимого. Но я не хочу писать в eof. Я хочу писать в определенную позицию в файле.

Вот небольшой пример:

ofstream out("test.txt", ios::binary | ios::app);
for(int i = 0; i < 100; i++)
    out.put('_');
out.write("Hallo", 5);
out.close();

ofstream out2("test.txt", ios::binary | ios::app);
out2.seekp(10);
out2.write("Welt", 4);
out2.close();

При использовании приложения поиск не работает. Если приложение не используется, открытие файла стирает данные. Кто-нибудь знает ответ?

13
задан Jonny Schubert 21 June 2011 в 15:16
поделиться