Sample code for 30+ languages & platforms
Delphi DLL

Convert String to GSM 03.38

See more HTML-to-XML/Text Examples

Demonstrates how to convert a string to the GSM character set. For more information about the GSM character set, see GSM Character Set

Note: This example requires Chilkat v9.5.0.79 or greater. Support for the GSM character set was added in v9.5.0.79.

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, BinData;

...

procedure TForm1.Button1Click(Sender: TObject);
var
success: Boolean;
s: PWideChar;
bdGsm: HCkBinData;

begin
success := False;

// Demonstrates how to convert a string to the GSM character set byte representation.

s := 'support@chilkatsoft.com, {abc}';

// In the above string the a-z letters have the same 1-byte values in the GSM character set.
// The '@' character is the 0x00 byte in GSM.
// The curly brace chars are 2-bytes each in GSM -- each beginning with the 0x1B escape char.
// The '.', ' ', and ',' are the same in GSM as us-ascii.

// Let's convert to GSM.

// bdGsm will contain the GSM bytes.
bdGsm := CkBinData_Create();

// Append the string to bdGsm.  The 2nd arg "gsm" tells AppendString to
// convert the incoming string to the gsm byte representation.
success := CkBinData_AppendString(bdGsm,s,'gsm');

// Let's examine what we have in hex:
Memo1.Lines.Add(CkBinData__getEncoded(bdGsm,'hex'));

// The result is:  737570706F7274006368696C6B6174736F66742E636F6D2C201B286162631B29

// Save the GSM bytes to a file.
success := CkBinData_WriteFile(bdGsm,'qa_output/gsm.txt');

CkBinData_Dispose(bdGsm);

end;