![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TStringList
Nick87 © (2008-09-30 11:16:00)Задача: строку значений разделенных символом разделителем преобразовать StringList. Делаю так:
procedure ToList(const SctIds: string; var List: TStringList);
var
L: TStringList;
begin
L := TStringList.Create;
try
L.Text := StringReplace(SctIds, ',', #13#10, [rfReplaceAll]);
{ TODO : }
finally
FreeAndNil(L);
end;
end;
Как в этом случае запретить дублирование записей (с dupIgnore не получается)
Anatoly Podgoretsky (2008-09-30 14:15:00) [1]> Сергей М. (30.09.2008 14:05:15) [15]
Нам тоже и это не 7
Anatoly Podgoretsky (2008-09-30 14:05:00) [2]
> у автора неясная версия
Мало ли чего в Д1 не было.
Сергей М. (2008-09-30 14:05:00) [3]
> Anatoly Podgoretsky © (30.09.08 14:04) [13]
А мне родной лес знакомей и привычней)
Anatoly Podgoretsky (2008-09-30 14:04:00) [4]> Сергей М. (30.09.2008 13:56:11) [11]
А откуда взялся Д7?
Правильный$Вася (2008-09-30 14:02:00) [5]
> в Д7 не живет
у автора неясная версия
Сергей М. (2008-09-30 13:56:00) [6]
> Anatoly Podgoretsky © (30.09.08 13:53) [10]
Такой зверь в Д7 не живет
Anatoly Podgoretsky (2008-09-30 13:53:00) [7]
> Сергей М. © (30.09.08 11:58) [7]
StrictDelimiter
Сергей М. (2008-09-30 12:18:00) [8]
> Плохиш © (30.09.08 12:13) [8]
Да, так будет точнее.
Плохиш (2008-09-30 12:13:00) [9]
> но и по пробелам
По символам с кодами <= 32
Сергей М. (2008-09-30 11:58:00) [10]
> Anatoly Podgoretsky © (30.09.08 11:46) [6]
С DelimitedText, если не ошибаюсь, ждет другая засада - стринглист порежет исх.строку не только по явно указанному разделителю, но и по пробелам (группа последовательных пробелов при этом трактуется как один).
Anatoly Podgoretsky (2008-09-30 11:46:00) [11]> Nick87 (30.09.2008 11:16:00) [0]
DelimitedText
Правильный$Вася (2008-09-30 11:23:00) [12]зачем вот это?
> var List: TStringList
Nick87 (2008-09-30 11:22:00) [13]
> Сергей М. © (30.09.08 11:19) [2]
> > с dupIgnore не получаетсяА Sorted = True ты выставил перед
> этиим ?
спасибо. Тема закрыта
Сергей М. (2008-09-30 11:21:00) [14]
> Nick87
К тому же CRLF является дифолтным разделителем - никакая замена их на другие разделители вовсе не требуется
Сергей М. (2008-09-30 11:19:00) [15]
> с dupIgnore не получается
А Sorted = True ты выставил перед этиим ?
Правильный$Вася (2008-09-30 11:18:00) [16]вообще-то ест специальное свойтсво для указания разделителя, без извратов с заменой
> с dupIgnore не получается
я не вижу его у тебя