![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как правильно скопировать строки
Andrew © (2008-10-11 19:27:00)Добрый вечер. Совсем недавно взялся изучать Delphi, поэтому не судите строго)). Вопрос следующий:
Есть текстовый файл вида -
bla-bla-bla12:12312341
bla-bla-bla13:12312342
bla-bla-bla14:12312343...
Нужно скопировать в Memo все строки до символа ':'. Делаю так:
var
c,d:integer;
strg,fd:string;
begin
str:=tstringlist.create;
if opendialog1.Execute then
str.loadfromfile(opendialog1.FileName);
for c := 0 to str.Count-1 do
strg:=str.Strings[c];
d:=pos(':',strg);
fd:=copy(strg,0,d);
memo1.Lines.add(fd);
В итоге в Memo только последняя строка. Что неправильно?
Andrew (2008-10-11 19:40:00) [1]Спасибо большое! Дошло с вашей помощью. Второй день изучаю Delphi, отладчик - это для меня рановато, наверное. Но я поучусь им пользоваться. Всем еще раз спасибо...
Palladin (2008-10-11 19:34:00) [2]все
изучаем основы Паскаля вообще программирования до полного просветления.
циклы.... условия... и операторные скобки
Правильный$Вася (2008-10-11 19:34:00) [3]
> for c := 0 to str.Count-1 do strg:=str.Strings[c]; d:=pos(':
> ',strg); fd:=copy(strg,0,d); memo1.Lines.add(fd);
потому что все это добро должно выполняться в цикле, т.е. хаключаться в операторные скобки begin-end
а у тебя в цикле просто перебираются строки до последней, а потом уже с ней манипуляции
кстати, отладчик тебе бы это все сам показал, если бы ты им воспользовался