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

  • Автор темы AAA
  • Дата начала
Статус
Закрыто для дальнейших ответов.
A
#1
Открыл файл с помощью:
int iFileHandle = FileOpen(F2->FileName,fmOpenReadWrite);

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

Как его теперь урезать до 300 байт (т.е. отбросить последние 700 байт) не создавая новый файл???
 
Z

zubr

#2
1. С помощью TMemoryStream->LoadFromFile открываешь свой файл
2. С помощью TMemoryStream->SetSize(300) устанавливаешь размер
3. С помощью TMemoryStream->SaveToFile сохраняешь в файл
 

grigsoft

Well-known member
15.11.2005
735
0
#3
Ага, а когда надо будет до 10М урезать, тоже писать заново? Есть системный вызов SetEndOfFile, полагаю что его можно и из билдера задействовать.
 
6

62316e

#4
согласен с grigsoft. VCL/CLX в этом случяе будет гораздо медленей работать.
 
Статус
Закрыто для дальнейших ответов.