Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Основная";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.011 c
1-1122511078
Alex_V
2005-07-28 04:37
2005.08.14
В чем причина?


14-1121762375
Knight
2005-07-19 12:39
2005.08.14
Продаёться авто... срочно!!!


14-1121844334
msguns
2005-07-20 11:25
2005.08.14
Барабашка ?


4-1119448376
Максим
2005-06-22 17:52
2005.08.14
Преобразование пути


14-1121506530
Игорь Шевченко
2005-07-16 13:35
2005.08.14
Мы не продаем Родину...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский