Delphi ActiveX
Delphi ActiveX
StringBuilder SetNth
Demonstrates the SetNth method.Chilkat Delphi ActiveX Downloads
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB;
...
procedure TForm1.Button1Click(Sender: TObject);
var
sb: TChilkatStringBuilder;
delimiterChar: WideString;
exceptDoubleQuoted: Integer;
exceptEscaped: Integer;
begin
// The SetNth method is handy for setting a part of a delimited string.
// For example:
sb := TChilkatStringBuilder.Create(Self);
sb.Append('red,blue,"green,purple",,yellow');
delimiterChar := ',';
exceptDoubleQuoted := 1;
exceptEscaped := 1;
sb.SetNth(2,'magenta',delimiterChar,exceptDoubleQuoted,exceptEscaped);
// Prints "red,blue,magenta,,yellow"
Memo1.Lines.Add(sb.GetAsString());
sb.SetNth(3,'orange',delimiterChar,exceptDoubleQuoted,exceptEscaped);
// Prints "red,blue,magenta,orange,yellow"
Memo1.Lines.Add(sb.GetAsString());
// What happens if we start with an empty string?
sb.Clear();
sb.SetNth(2,'apple',delimiterChar,exceptDoubleQuoted,exceptEscaped);
// Prints ",,apple"
Memo1.Lines.Add(sb.GetAsString());
sb.SetNth(0,'orange',delimiterChar,exceptDoubleQuoted,exceptEscaped);
// Prints "orange,,apple"
Memo1.Lines.Add(sb.GetAsString());
sb.SetNth(1,'banana',delimiterChar,exceptDoubleQuoted,exceptEscaped);
// Prints "orange,banana,apple"
Memo1.Lines.Add(sb.GetAsString());
end;