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

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

Удаление пустых строк из Memo [D7, Win2k]


VitGun ©   (2004-10-09 21:48:00) 

Господа я, похоже, туплю.
Загружаю в Memo текстовый файл. Кодировка ANSI. Мне нужно удалить из него пустые строки. Делаю тупой перебор:
for i:=0 to memo.lines.count-1 do
 begin
  if memo.lines.strings[i]='' then memo.lines.delete(i);
 end;
Некоторые строки удаляет, а некоторые остаются, никак не могу понять почему. Поделитесь мыслями - что делать?


X-jedy   (2004-10-10 02:30:00) [1]

Сам обжигался точно на таком же таске =)


Чава   (2004-10-09 22:23:00) [2]

VitGun ©   (09.10.04 22:12) [3]
> Мда...это-то я и упустил из виду

Ну дык:) Это же, можно сказать - стандарт!


VitGun   (2004-10-09 22:12:00) [3]

//Семен Сорокин ©
Thanx...работает...
//X-jedy
Мда...это-то я и упустил из виду...thanx...


X-jedy   (2004-10-09 21:54:00) [4]

=)
IMHO при удалении строчки ты перескакиваешь не на следующую, а через одну :
0.)asdf
1.)qwerty
2.)
3.)
4.)zxcvb
Твой алгоритм - идешь на 0-вую строчку, на первую, доходишь до второй, удаляешь, картина становится такой:

0.)asdf
1.)qwerty
2.)
3.)zxcvb

далее по алгоритму i+1, и ты уже на третей, пропустив таким образом пустую строчку.


Семен Сорокин   (2004-10-09 21:52:00) [5]

for i:=memo.lines.count-1 downto 0 do


Наверх

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