Sample code for 30+ languages & platforms
Delphi DLL

StringTable SplitAndAppend Example

Demonstrates the StringTable SplitAndAppend method.

Chilkat Delphi DLL Downloads

Delphi DLL
uses
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, StringTable;

...

procedure TForm1.Button1Click(Sender: TObject);
var
strTab: HCkStringTable;
s: PWideChar;
i: Integer;
numStrings: Integer;

begin
strTab := CkStringTable_Create();

// SplitAndAppend make it easy to break apart comma delimited, semicolon delimited,
// or strings delimited by other characters.
s := 'abc,123,xyz,456,music,math,"World History","Chicago,Cubs",Japan';

CkStringTable_SplitAndAppend(strTab,s,',',True,True);

i := 0;
numStrings := CkStringTable_getCount(strTab);
while i < numStrings do
  begin
    Memo1.Lines.Add(IntToStr(i) + ': ' + CkStringTable__stringAt(strTab,i));
    i := i + 1;
  end;

// The output is: 
// 0: abc
// 1: 123
// 2: xyz
// 3: 456
// 4: music
// 5: math
// 6: "World History"
// 7: "Chicago,Cubs"
// 8: Japan

// Note: Keeping the quotes is intentional.

CkStringTable_Dispose(strTab);

end;