// ListBox
ListBox1->Items->Delimiter = '|';
ListBox1->Items->DelimitedText = "слово1|слово2 слово3|слово4|слово5 слово6";
// TStringList
TStringList *List;
List = new TStringList();
List->Delimiter = '|';
List->DelimitedText = "слово1|слово2 слово3|слово4|слово5 слово6";
for(int i=0; i<List->Count; i++)
ShowMessage(List->Strings);
...
List->Delimiter
Когда пытаюсь разбить строку:
char delim = "|";
List->DelimitedText = "слово1|слово2 слово3|слово4|слово6 слово6";
List->Delimiter = delim;
то оно разбивается не только по знаку | а и по пробелам :(
мож я что-то не так делаю, или у меня руки кривые, подскажите плиз че не так?:confused:
Вполне возможно, что реализация GetDelimitedText соответствует соглашениям CommaText, со всеми вытекающими.
Сперва нужно установить Delimiter и только после этого DelimitedText.
Пробовал, не помагает :(
[QUOTE=Zeran]Пробовал, не помагает :([/QUOTE]
Код:
TStringList *List = new TStringList();
List->Assign (Memo1->Strings);
List->Delimiter = '|';
Edit1->Text = List->DelimitedText
List->Assign (Memo1->Strings);
List->Delimiter = '|';
Edit1->Text = List->DelimitedText
После этого может стать понятнее, как производится синтез и анализ DelimitedText. В приведённом примере, строки списка, содержащие пробелы, заключатся в кавычки ("Текст с пробелами").