«« Site Rescued »»

While the site is still going to move from its current host, a new site will now take its place. More Info.

The new site may have less content, but the core will now remain. And it will now play nicely with phones! Keep an eye on the DelphiDabbler Blog for news.

» Help

Convert strings to character sets and vice versa

   

The following code converts strings into character sets and vice-versa.

Note: this code works only for non-Unicode versions of Delphi (i.e. Delphi 2007 and earlier) where string = AnsiString. For Delphi 20009 and later use TSysCharSet instead of TCharSet and replace all occurrences of string with AnsiString.

type
  TCharSet = set of char;
 
function StringToCharSet(const Txt: string): TCharSet;
var
  CP: PChar;
begin
  Result := [];
  if Txt = '' then
    Exit;
  CP := PChar(Txt);
  while CP^ <> #0 do 
  begin
    Include(Result, CP^);
    Inc(CP);
  end;
end;
 
function CharSetToString(const Chars: TCharSet): string;
var
  I: Integer;
begin
  Result := '';
  for I := 0 to 255 do
    if Chr(I) in Chars then
      Result := Result + Chr(I);
end;
Author: Thomas Morschhaeuser
Contributor: Thomas Morschhaeuser
Added: 2014-05-22
Last updated: 2014-05-29

« Return to contents »