我存储在的TStringList字符串列表,我想将其转换成字符串用逗号分隔的,我使用下面的代码转换的TStringList到字符串分隔符
channelList: TStringList;
aCurrentChannel := Stringreplace(channelList.Text,Char(13)+Char(10),',',[rfReplaceAll]);
,但最后一个字符来作为,像1,2,是否有避免这种情况?
我存储在的TStringList字符串列表,我想将其转换成字符串用逗号分隔的,我使用下面的代码转换的TStringList到字符串分隔符
channelList: TStringList;
aCurrentChannel := Stringreplace(channelList.Text,Char(13)+Char(10),',',[rfReplaceAll]);
,但最后一个字符来作为,像1,2,是否有避免这种情况?
您需要使用TStringList
类的DelimitedText属性。从在线帮助
Use DelimitedText to get or set all the strings in the TStrings object in a single string, separated by the character specified by the Delimiter property.
使用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(',');
的TStringList投来看看有CommaText物业 –
正如JamesB所写,有'CommaText'属性,但使用'Trim()'应该修复你原来的解决方案,即'StringReplace(Trim(sl.Text),...)' – ain
@JamesB,CommaText用“作为QuoteChar包围项目,也许这不是OP想要的 – whosrdaddy