Вниз
Скачать: CL | DM;

StringList   Найти похожие ветки 

 
Edik86   (2004-02-16 19:35) [0]

Нижепреведенным кодом я хочу получить следующее
1 11
222
333

procedure TForm1.Button1Click(Sender: TObject);
var
StringList:TStringList;
begin
StringList:=TStringList.Create;
StringList.Delimiter:=";";
StringList.DelimitedText:="1 11;222;333;";
Memo1.Lines.Assign(StringList);
end;

а получается вот что:
1
11
222
333


 
_Dima_   (2004-02-16 19:37) [1]

т.е. почему-то пробел тоже становится разделителем.


 
Rouse_ ©   (2004-02-16 20:19) [2]

Потомучто, если посмотреть в Classes.pas и найти procedure TStrings.SetDelimitedText(const Value: string); то там мы сможем обнаружить следующую строку: while (P^ > " ") and (P^ <> Delimiter) do.
В принципе об этом на неявно и намекает хэлп: Use DelimitedText to get or set all the strings in the TStrings object in a single string.

Желаю успехов


 
Rouse_ ©   (2004-02-16 20:27) [3]

Забыл добавить: поэтому если хочешь получить то? что ты написал? то проще будет через StringReplace.


 
REA ©   (2004-02-17 09:10) [4]

А кавычки там не помогут? Я алгоритм не помню, но что-то какое было. Или это CommaText?

Хм - в примере совсем без пробелов:
"String1, String 2, String 3,"

the string list will contain

String1
String2
String3
<Blank>


 
имя   (2004-02-17 11:12) [5]

Удалено модератором


 
Плохиш   (2004-02-17 11:20) [6]


> А кавычки там не помогут?

Помогут, только не кавычки, а QuoteChar


 
Rouse_ ©   (2004-02-17 11:20) [7]

Странно - какаято ерунда у меня написалась (кракозябры), повторю пост:

Ну почемуже не помогут - помогут: StringList.DelimitedText:=""1 11";222;333;";

Опять - же это описано в хэлпе.

ЗЫ: Про StringReplace - это я переборщил. Проверил через цикл, всеже DelimitedText работает примерно в два раза быстрее. Моя ошибка была...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.017 c
14-94188
default
2004-02-06 15:49
2004.02.29
Задачка


8-94044
dream
2003-10-29 02:53
2004.02.29
Работа для 3D-художников


3-93774
EugenePichugin
2004-02-03 18:11
2004.02.29
Вызов хранимой процедуры Oracle из Delphi


1-93874
MadGhost
2004-02-15 12:29
2004.02.29
можно ли использовать один класс в разных модулях?


6-94069
denkop
2003-12-16 01:47
2004.02.29
Проблема с сокетами




   Наверх