Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.08;
Скачать: CL | DM;

Вниз

Скопировать фрагмент файла в новый файл   Найти похожие ветки 

 
Crass   (2005-12-20 14:30) [0]

файл сложной структуры// ~ 80 кб

из него необходимо вырезать кусок в ~1 кб, зная два символа начала фрагмента и два конца// пусть это будет %# и $#
то что между ними в отдельный файл поместить.
вопрос у меня один- Как?
буду очень благодарен за ответ


 
Anatoly Podgoretsky ©   (2005-12-20 14:54) [1]

А что именно не понятно, поскольку здесь очень большое количество вопросов и это основы Паскаля/Дельфи


 
Digitman ©   (2005-12-20 14:54) [2]

- отбражаешь файл в память (MMF), получаешь указатель;
- имея указатель и размер образа ищешь первую сигнатуру (%#)
- при нахождении фиксируешь указатель на адрес (A1) , следующий за найденной сигнатурой (при ненахождении - выход)
- ищешь вторую сигнатуру (S#), при нахождении фиксируешь указатель на адрес (A2) минус 1 найденного адреса сигнатуры (при ненахождении - выход)
- в результирующий файл записываются данные, находящиеся по адресу А1 размером А2 - А1


 
Crass   (2005-12-21 10:42) [3]

{и это основы Паскаля/Дельфи} дык никогда не работал я с этим

Digitman  Это оно?
fs1 := TFileStream.Create(opendialog1.FileName, fmOpenReadWrite);
 fs1.Position := 0;
 k:=1;
 et:=#$F5+#05;
 fs1.Read(buf, 2);
 while k<2 do
 begin
 fs1.Seek(k, soFromCurrent);
 fs1.Read(buf, 2);
 inc(k);
 end  ;
 fs1.Free;
 label1.Caption:=inttostr(k);
тоКа у меня ошибка выскакивает походу выполнения, это поиск, если Вы видете где ошибка?


 
Leonid Troyanovsky ©   (2005-12-21 11:06) [4]


> Crass   (21.12.05 10:42) [3]

> {и это основы Паскаля/Дельфи} дык никогда не работал я с


Газеты.. тьфу, книги надо читать.

> Это оно?

http://groups.google.com/group/fido7.ru.delphi/msg/64b9f15bdadf6923

--
Regards, LVT.



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

Текущий архив: 2006.01.08;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
14-1134623082
begin...end
2005-12-15 08:04
2006.01.08
С Днём рождения! 15 декабря


14-1134463904
Иван Шихалев
2005-12-13 11:51
2006.01.08
Смайлы для Миранды


3-1131808344
DimDim
2005-11-12 18:12
2006.01.08
Автоматическая вставка строки в DbGrid (DbGridEh)


2-1135149994
chelovek
2005-12-21 10:26
2006.01.08
Новый компонент.


2-1135033586
ZeeM
2005-12-20 02:06
2006.01.08
Функции пребразования StrToFloat, StrToInt и др.