TStringListに格納されている文字列のリストがあり、コンマで区切られた文字列に変換したいので、次のコードを使用します
channelList: TStringList;
aCurrentChannel := Stringreplace(channelList.Text,Char(13)+Char(10),',',[rfReplaceAll]);
しかし、最後の文字は、1,2のように来ていますが、それを回避する方法はありますか?
TStringList
クラスの DelimitedText プロパティを使用する必要があります。オンラインヘルプから
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(',');