Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Что быстрее? [D5, Win95/98]


Sego ©   (2002-11-13 15:30:00) 

Вот нашкрябал неопытной рукой
var
Form1: TForm1;
AA:string;
f: File;
Size:longInt;
Buffer:TMemoryStream;
E:byte;
.............
AssignFile(f, "su" );
reset(f,1);
Size:= FileSize(f);
closefile(f);

buffer:=TMemoryStream.Create;
buffer.SetSize(Size);
buffer.LoadFromFile("su");
while buffer.Position<=size-1 do begin
buffer.Read(e,sizeof(e));
AA:= inttohex(e,2);
.......................

На выходе получаем последовательности типа AA 02 03 AB 34 45 44 56....

последовательность большая, мне нужно выхватить из нее в определенных местах другие последовательности но уже меньшей длинны, их около 60-70, например 1-я последовательность сосотоит из АА22, вторая 03 , третья АВ344(!!!), как лучше всего это реализовать?
Есть предположение заганят после преобразования в НЕХ сразу в
элементы tstringlist, но вроде не очень быстро получается.. (потом эти последовательности по-другому правилу надо будет записать в файл):(
Может уважаемые мастера знают более быстрый способ?


Sego   (2002-11-13 17:53:00) [1]

2 F1 © (13.11.02 16:25)
:)

вообще-то программа только подготовка к работе, которая содержит такой модуль обработки данных.
Вот хочу все модулями попробывать, потом сложить.

А вообщето я совет конкретный спросил, а нфига он мне -это не важно, важно , что это применительно к Делфи, а это форум по Делфи. (ИМХО).
Тобишь , вместо критики хотелось бы более конструктивные предложения увидеть, а потрепаться и в другом месте можна.


F1   (2002-11-13 16:25:00) [2]

Ну если ты себе задачу придумал, так попробуй ее сам и реши, а то получается ты не для себя задачу придумал, да еще и какую-то геморойную ;)


Sego   (2002-11-13 15:48:00) [3]

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


F1   (2002-11-13 15:45:00) [4]

Короче, скажи что надо сделать впринципе, может ты вообще не тем путем пошел???


Jeer   (2002-11-13 15:43:00) [5]

Разговор сам с собой..


Sego   (2002-11-13 15:41:00) [6]

2 F1
AA:= inttohex(e,2);
AA-это конечный результат, его надо записать с ним работы никакой не будет, просто надо сгрупировать из АА разные последовательности. Считываю по символу потому как ищу флаг-признак, с которого момента данные поддаются тому или другому принципу группировки, все.


F1   (2002-11-13 15:36:00) [7]

Не понял, зачем тебе IntToHex, с числами удобнее и быстрее, чем со строками.


Наверх

Титульная страница Поиск, карта сайта Написать письмо