Преобразование TStringlist в строку с разделителем
У меня есть список строк, хранящихся в TStringList, я хочу преобразовать его в строку, разделенную запятыми, и я использую следующий код
channelList: TStringList;
aCurrentChannel := Stringreplace(channelList.Text,Char(13)+Char(10),',',[rfReplaceAll]);
но последний символ так же , как 1,2, есть в любом случае, чтобы избежать этого?
3 ответов
вам нужно использовать DelimitedText свойства TStringList
класса. Из справки
используйте DelimitedText для получения или установки всех строк в объекте TStrings в одной строке, разделенной символом, указанным свойством Delimiter.
использовать DelimitedText
свойства:
channelList.Delimiter := ',';
channelList.QuoteChar := ''; // or
channelList.QuoteChar := #0; // for higher delphi versions
aCurrentChannel := channelList.DelimitedText;
пока вы в строковых списках, я предлагаю вам взглянуть на http://wiki.delphi-jedi.org/wiki/JCL_Help:IJclStringList
// var channelList: iJclStringList;
var s: string;
s := JclStringList.Add(['aaa','bbb','ccc '])
.Split('ddd: eee', ':', False).Trim.Join(',');