![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Что быстрее? [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, с числами удобнее и быстрее, чем со строками.