попробуйте вторую перегрузку seekp
, которая позволяет указать смещение и направление , это может быть начало файла в вашем случае (т.е. ios_base::beg
). Это, конечно, предполагает, что вы знаете, что делаете, и все, что вам нужно, это перезаписать существующее количество символов.
РЕДАКТИРОВАТЬ: вот полностью рабочий пример:
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
{
ofstream out("test.txt", ios::binary);
for(int i = 0; i < 100; i++)
out.put('_');
out.write("Hallo", 5);
}
{
fstream out2("test.txt", ios::binary | ios::out | ios::in);
out2.seekp(10, ios::beg);
out2.write("Welt", 4);
}
}