Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
 TLV парсер  [new]
Galadriel75
Member

Откуда:
Сообщений: 1298
Доброе время суток!
Может кто в курсе, где взять готовый парсер, желательно на Delphi, чтобы распарсить ASN.1 сообщение. Можно, конечно и свое сделать, но зачем изобретать велосипед, когда уже давно все сделано. Вроде бы в Indy парсер есть? Че-то не нашел ничего подходящего. Гугл всякое показывает, но не то, что надо...
9 янв 18, 22:39    [21091757]     Ответить | Цитировать Сообщить модератору
 Re: TLV парсер  [new]
YuRock
Member

Откуда: Донецк
Сообщений: 3429
Galadriel75,

TLV куча видов. Каждый умник не придерживается чего-то из стандарта. У меня свой, и каждый раз, когда нужен был, приходилось "магические" параметры вводить, чтобы и старое не испортить, и новое чтоб работало.
9 янв 18, 22:42    [21091766]     Ответить | Цитировать Сообщить модератору
 Re: TLV парсер  [new]
Galadriel75
Member

Откуда:
Сообщений: 1298
YuRock
Galadriel75,

TLV куча видов. Каждый умник не придерживается чего-то из стандарта. У меня свой, и каждый раз, когда нужен был, приходилось "магические" параметры вводить, чтобы и старое не испортить, и новое чтоб работало.

Мне подойдет такой вид: тэг, длина, значение.
9 янв 18, 22:44    [21091773]     Ответить | Цитировать Сообщить модератору
 Re: TLV парсер  [new]
Galadriel75
Member

Откуда:
Сообщений: 1298
Galadriel75
YuRock
Galadriel75,

TLV куча видов. Каждый умник не придерживается чего-то из стандарта. У меня свой, и каждый раз, когда нужен был, приходилось "магические" параметры вводить, чтобы и старое не испортить, и новое чтоб работало.

Мне подойдет такой вид: тэг, длина, значение.
ber-tlv
9 янв 18, 22:57    [21091788]     Ответить | Цитировать Сообщить модератору
 Re: TLV парсер  [new]
YuRock
Member

Откуда: Донецк
Сообщений: 3429
Galadriel75
Мне подойдет такой вид: тэг, длина, значение.
Это понятно))
А составные тэги - по стандарту или "в уме"? Добавляется соотв. битик или нет? И т.д.
9 янв 18, 23:04    [21091798]     Ответить | Цитировать Сообщить модератору
 Re: TLV парсер  [new]
Galadriel75
Member

Откуда:
Сообщений: 1298
YuRock
Galadriel75
Мне подойдет такой вид: тэг, длина, значение.
Это понятно))
А составные тэги - по стандарту или "в уме"? Добавляется соотв. битик или нет? И т.д.

Да, все как в стандарте!
9 янв 18, 23:08    [21091805]     Ответить | Цитировать Сообщить модератору
 Re: TLV парсер  [new]
YuRock
Member

Откуда: Донецк
Сообщений: 3429
Galadriel75
Да, все как в стандарте!

Так ты определись,

Galadriel75
Мне подойдет такой вид: тэг, длина, значение

или

YuRock
А составные тэги - по стандарту ... Добавляется соотв. битик



Так или иначе, реализуется это за 30 минут.
10 янв 18, 00:28    [21091865]     Ответить | Цитировать Сообщить модератору
 Re: TLV парсер  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 45074

YuRock
Так или иначе, реализуется это за 30 минут.

В простейшем случае даже быстрее:
while not eof(f) do
  begin
   BlockRead(f, tag, sizeof(tag));
   BlockRead(f, length, sizeof(length));
   BlockRead(f, buffer, length);
   case tag of
    ......
   end;
  end;

Posted via ActualForum NNTP Server 1.5

10 янв 18, 17:12    [21094283]     Ответить | Цитировать Сообщить модератору
 Re: TLV парсер  [new]
Galadriel75
Member

Откуда:
Сообщений: 1298
Dimitry Sibiryakov
YuRock
Так или иначе, реализуется это за 30 минут.

В простейшем случае даже быстрее:
while not eof(f) do
  begin
   BlockRead(f, tag, sizeof(tag));
   BlockRead(f, length, sizeof(length));
   BlockRead(f, buffer, length);
   case tag of
    ......
   end;
  end;


Так то да, это вариант простейший. Но мне надо сделать по работе настоящий парсер, чтобы там дерево получилось, так как иные тэги вложены в другие тэги... Уже, по сути, изобретаю велосипед. Сделал почти что... Рекурсивно парсит блок данных.

Надеюсь, что уже и закончу завтра. Спасибо всем за участие!
10 янв 18, 21:33    [21094890]     Ответить | Цитировать Сообщить модератору
 Re: TLV парсер  [new]
Galadriel75
Member

Откуда:
Сообщений: 1298
Все, тему можно закрывать! Парсер я сделал! Отлично работает и все парсит! Рекурсивно...
13 янв 18, 20:53    [21104805]     Ответить | Цитировать Сообщить модератору
Все форумы / Delphi Ответить