• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

    Запись на курс до 25 апреля. Получить промодоступ ...

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

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

AAA

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

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

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

zubr

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

grigsoft

Ага, а когда надо будет до 10М урезать, тоже писать заново? Есть системный вызов SetEndOfFile, полагаю что его можно и из билдера задействовать.
 
6

62316e

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

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