Sample code for 30+ languages & platforms
Unicode C

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 Unicode C Downloads

Unicode C
#include <C_CkBinDataW.h>

void ChilkatSample(void)
    {
    BOOL success;
    const wchar_t *s;
    HCkBinDataW bdGsm;

    success = FALSE;

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

    s = L"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 = CkBinDataW_Create();

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

    // Let's examine what we have in hex:
    wprintf(L"%s\n",CkBinDataW_getEncoded(bdGsm,L"hex"));

    // The result is:  737570706F7274006368696C6B6174736F66742E636F6D2C201B286162631B29

    // Save the GSM bytes to a file.
    success = CkBinDataW_WriteFile(bdGsm,L"qa_output/gsm.txt");


    CkBinDataW_Dispose(bdGsm);

    }