Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.01.2008, 00:54   #1
Stanislav
Квадрокоптерист
Участник клуба Подтвердите свой е-майл
 
Регистрация: 29.09.2007
Сообщений: 1,824
По умолчанию пример парсинга

Здравствуйте...

Нашел статью с примером парсинга

Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  Stream: TStream;
  s: string;
begin
  Stream := TMemoryStream.Create;
  try
    { получаем текст области редактирования и помещаем его в поток }
    s := memo1.Text;
    Stream.WriteBuffer(s[1], length(s));
    { сбрасываем стартовую позицию потока и создаем парсер }
    Stream.Position := 0;
    with TParser.Create(Stream) do
    try
      { "добываем" числа и добавляем их в список }
      while Token <> toEOF do
      begin
        CheckToken(toInteger); { возбуждаем исключение, если не toInteger }
        Listbox1.Items.Add(IntToStr(TokenInt));
        NextToken;
      end;
    finally
      Free;
    end;
  finally
    Stream.Free;
  end;


end;

end.
Пыталься переделать под String не чего не выходит он в listbox выводит по буквено тоесть слово:
Например
Выведет так:
Н
а
п
р
и
м
е
р

Как его заточить под стринг ?

Заранее благодарен...
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
Stanislav вне форума Ответить с цитированием
Старый 07.01.2008, 09:52   #2
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject);   
var   
  Stream: TStream;   
  s: string;   
begin   
  Stream := TMemoryStream.Create;   
  try   
    { получаем текст области редактирования и помещаем его в поток }   
    s := memo1.Text;   
    Stream.WriteBuffer(s[1], length(s));   
    { сбрасываем стартовую позицию потока и создаем парсер }   
    Stream.Position := 0;   
    with TParser.Create(Stream) do   
    try   
      { "добываем" числа и добавляем их в список }  
      s := ''; 
      while Token <> toEOF do   
      begin   
        CheckToken(toInteger); { возбуждаем исключение, если не toInteger }   
        //Listbox1.Items.Add(IntToStr(TokenInt));   -->
        s := s + IntToStr(TokenInt);
        NextToken;   
      end;   
    finally   
      Free;   
    end;   
  finally   
    Stream.Free;   
  end;   
  
  
end;   
  
end.
Я понял так
BOBAH13 вне форума Ответить с цитированием
Старый 07.01.2008, 22:17   #3
Stanislav
Квадрокоптерист
Участник клуба Подтвердите свой е-майл
 
Регистрация: 29.09.2007
Сообщений: 1,824
По умолчанию

Походу так работать не будет там же строчка
CheckToken(toInteger); { возбуждаем исключение, если не toInteger }
а у нас String произойдет искл ситуация..... пробывал менять На toString где встречал Integer это приводило к тому что просиходило выше мной указанное....
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
Stanislav вне форума Ответить с цитированием
Старый 08.01.2008, 13:21   #4
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

А вы попробуйте вашу вот эту фразу расписать нормальным человеческим языком:
Цитата:
Как его заточить под стринг ?
Тогда, может быть и станет, наконец, понятным - чего же вы хотите...
У нас ведь тут не мастерская по заточке коньков и прочего...
Вован вам ответил на ваш вопрос - как сделать, чтобы символы выводились в строку, а не в столбец (упустил, правда, один оператор - Listbox1.Items.Add(s), но это только от того, что торопился вам помочь побыстрее).

Последний раз редактировалось mihali4; 08.01.2008 в 13:25.
mihali4 вне форума Ответить с цитированием
Старый 14.01.2008, 03:48   #5
Stanislav
Квадрокоптерист
Участник клуба Подтвердите свой е-майл
 
Регистрация: 29.09.2007
Сообщений: 1,824
По умолчанию

Здравствуйте mohali4 я прошу прощения за не правильное употребления русского языка.... и выражаю огромную благодарность за предъявленную мне помощь оказанную вами и ВОВАН13 .. вы мне очень сильно помогли как всегда.... я больше не буду употреблять жаргон такого характера... не сочтите за ехидство но можно вам один вопрос бональный такой: когда размер файла измеряют в весе вас это тоже удивляет? просто так ради любопытства спрашиваю....

А так огромное спасибо кто откликнулься очень помогли...
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
Stanislav вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Dec to Hex - пример использования Roof Общие вопросы Delphi 8 03.08.2008 19:40
П Р О С Т Е Й Ш И Й пример 3D aesoem Gamedev - cоздание игр: Unity, OpenGL, DirectX 3 16.07.2008 16:54
Пример из учебника valerij Microsoft Office Excel 11 20.06.2008 15:43
Пример патчинга Д'якон Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 17.02.2008 19:27