Обрезать файл.

  • Автор темы Автор темы AAA
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
A

AAA

Открыл файл с помощью:
int iFileHandle = FileOpen(F2->FileName,fmOpenReadWrite);

Получил размер его:
Size_File=FileSeek(iFileHandle,0,2);
Пусть его размер = 1000 байт.

Как его теперь урезать до 300 байт (т.е. отбросить последние 700 байт) не создавая новый файл???
 
1. С помощью TMemoryStream->LoadFromFile открываешь свой файл
2. С помощью TMemoryStream->SetSize(300) устанавливаешь размер
3. С помощью TMemoryStream->SaveToFile сохраняешь в файл
 
Ага, а когда надо будет до 10М урезать, тоже писать заново? Есть системный вызов SetEndOfFile, полагаю что его можно и из билдера задействовать.
 
согласен с grigsoft. VCL/CLX в этом случяе будет гораздо медленей работать.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!