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

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

Пробелы задолбали [D7]


GeoShot ©   (2009-10-06 17:09:00) 

Добрый день, подскажите: считываю с Memo с заданного диапазона позиций значение в переменную integer, бывает что весь диапазон заполнен пробелами.


faiwer   (2009-10-06 17:33:00) [1]

s:= ...; // string
ss:='';
for t:=1 to length(s) do
if s[t] in ('0'..'9') then ss:=ss+s[t];
if ss='' then value:=0 else value:=inttostr(ss);

чтото вроде этого сгодится? )


GeoShot   (2009-10-06 17:16:00) [2]

по сути мне надо заменить 5пробелов в 0


GeoShot   (2009-10-06 17:15:00) [3]

Да я вроде так и делаю CDP[k] - строковый масив, а ICDTV[k,0] - целочисленный


faiwer   (2009-10-06 17:13:00) [4]

А по русски? у тя есть мемо в которой цифры и пустота, ты считываешь с нужного места текст в надежде получить оттуда int но иногда там просто пробелы?

ну дык считывай их в строку, а из строки вручную выцеживай число.


GeoShot   (2009-10-06 17:12:00) [5]

for i:=stLine to enLine do
   begin
      CDP[k] :=Copy(Memo1.Lines[i-1],StrToInt(StringGrid1.Cells[1,1]),StrToInt(StringGrid1.Cells[3,1]));  
      Time[k]:=Copy(Memo1.Lines[i-1],StrToInt(StringGrid1.Cells[1,2]),StrToInt(StringGrid1.Cells[3,2]));  
      Vel[k] :=Copy(Memo1.Lines[i-1],StrToInt(StringGrid1.Cells[1,3]),StrToInt(StringGrid1.Cells[3,3]));  

      ICDTV[k,0]:=StrToInt(CDP[k]);
      ICDTV[k,1]:=StrToInt(Time[k]);
      ICDTV[k,2]:=StrToInt(Vel[k]);
      k:=k+1;

   end;


Наверх

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