|
KEYTAB
Die Zeichensätze
Bei dem Zeichensatz "UTF-7,5" handelt es sich nicht um
einen Zeichensatz, wie z.B. "Windows Codepage 1252", sondern
vielmehr um eine Codierung von Unicode-Zeichen.
Der von KEYTAB implementierte Algorithmus zur Umwandlung von
Unicode in UTF-7,5 lautet im C-Source:
if( lunicode<0x80 )
{
string[0] = (char)(lunicode & 0xFF);
used = 1;
}
else if( lunicode<0x400 )
{
string[0] = 0xA0 | (char)((lunicode>>6) & 0x0F);
string[1] = 0xC0 | (char)(lunicode & 0x3F);
used = 2;
}
else if( lunicode<0x10000l )
{
string[0] = 0xB0 | (char)((lunicode>>12) & 0x0F);
string[1] = 0xC0 | (char)((lunicode>>6) & 0x3F);
string[2] = 0xC0 | (char)(lunicode & 0x3F);
used = 3;
}
else
{
long ersatz = uniMakeSurrogate(lunicode);
short h_used;
Unicode2Utf75((ersatz >> 16) & 0xFFFF, string, &used);
Unicode2Utf75((ersatz & 0xFFFF), string + used, &h_used);
used += h_used;
}
Copyright © Martin Elsässer (eMail-Adressen)
Letzte Aktualisierung am 12. Dezember 2006
|