Вниз
Скачать: CL | DM;

Удаление из файла информации определенного размера   Найти похожие ветки 

 
Reals   (2005-07-28 10:42) [0]

Здравствуйте!
Помогите пожалуйста со следующим вопросом.
Имеется текстовый файл размером, например в 1000Кb, необходимо удалить информацию из этого файла размером в 100Kb. Информацию нужно удалить с начала файла, а не с конца, то есть последняя записаная информация в конце файла остается, а старая информация (которая в начале файла), удалятся.

Как такое можно осуществить. Подкиньте пожалуйста идеи...

Заранее премного благодарен.


 
Плохиш ©   (2005-07-28 10:50) [1]

Копируешь в новый файл только нужные данные, удаляешь старый, переименовываешь новый.


 
Reals   (2005-07-28 12:17) [2]

Так вот как именно взять нужные данные, а точнее вырезать этих первых 100Kb из файла, а то что осталось записать?

Спасибо!


 
Kolan ©   (2005-07-28 12:25) [3]

Копируещь начиная со следующего после 100kb байта. Те Со 100kb + 1байт и до конца.

Seek, AssignFile, file of, CloseFile... + F1


 
Digitman ©   (2005-07-28 12:29) [4]

var src_fs, dst_fs : TFileStream;

..

src_fs := TFileStream.Create("исходный_файл", fmOpenRead);
dst_fs := TFileStream.Create("новый_файл", fmCreate);
src_fs.Position := 100 * 1024; //100кб
dst_fs.CopyFrom(src_fs, src_fs.Size - src_fs.Position);
src_fs.Free;
dst_fs.Free;
DeleteFile("исходный_файл");
RenameFile("новый_файл", "исходный_файл");


 
афвуд   (2005-07-28 12:30) [5]

Fil1,Fil2:TFileStream;
begin
//Тут просто открываешь эти файлы
Fil1.Position:=100000;
Fil2.CopyFrom(Fil1,900000);
//тут закрываешь эти файлы


Приблизительно так. Хотя задавать числа прямо вот так как я - некрасиво.. но это уже твои проблемы :)


 
Reals   (2005-07-28 12:46) [6]

Спасибо всем огромное за подсказки.
Все получилось!



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.039 c
4-1119447130
alkmas
2005-06-22 17:32
2005.08.14
Установка переменной окружения в родительском процессе


1-1122360818
Dust
2005-07-26 10:53
2005.08.14
GetLastError


11-1105533820
nicesc
2005-01-12 15:43
2005.08.14
Edit1.Text - ошибка при попытке присвоить значение


1-1122534545
Karluha
2005-07-28 11:09
2005.08.14
Interface ID


3-1120805704
kyn66
2005-07-08 10:55
2005.08.14
Переход с RxDBGrid на DBGridEh




   Наверх