System.Classes.TStrings.CommaText
Delphi
property CommaText: string read GetCommaText write SetCommaText;
C++
__property System::UnicodeString CommaText = {read=GetCommaText, write=SetCommaText};
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
property | public | System.Classes.pas System.Classes.hpp |
System.Classes | TStrings |
説明
TStrings オブジェクト内の文字列を、単一のカンマ区切りの文字列にリスト化します。
CommaText を使用すると、 TStrings オブジェクト内のすべての文字列を、単一のカンマ区切りの文字列から取得またはそこに設定することができます。単一のカンマ区切りの文字列の形式は、システム データ形式(SDF)としても知られています。
CommaText を取得した場合は、スペース、カンマ、または 2 重引用符を含む任意の文字列は、二重引用符で囲まれています。また、文字列内の二重引用符は 2 回繰り返されます。 たとえば、リストに次の文字列が含まれていた場合を考えます。
Stri,ng1 Stri"ng2 String 3 String4
CommaText は次のように返します:
"Stri,ng1","Stri""ng2","String 3",String4
CommaText に代入した場合、その値は SDF 形式のテキストとして解析されます。 SDF 形式では、文字列は、コンマまたはスペースで区切られています。また、オプションで二重引用符で囲んでもかまいません。 文字列の一部となっている二重引用符は、文字列を囲むための引用符と区別するために、2 回繰り返されます。 二重引用符に囲まれていないスペースやコンマは、区切り文字になります。 2 つのコンマが隣り合っている場合は、空の文字列を表します。ただし、別の区切り文字の隣にあるスペースは無視されます。 たとえば、CommaText に次の文字列を設定した場合を考えます。
"Stri,ng 1","Stri""ng 2",String 3,String4
リストには次の文字列が含まれることになります。
Stri,ng 1 Stri"ng 2 String 3 String4
メモ: CommaText は、区切り文字が「,」で引用符文字が「"」の場合の DelimitedText と同じです。
ソース文字列の末尾にコンマが含まれる場合は、文字列リストに空白の項目が含まれる結果になります。 たとえば、CommaText に次の文字列を設定した場合を考えます。
"String1,String2,String3, "
文字列リストには次の文字列が含まれることになります。
String1 String2 String3 <Blank>