- typedef unsigned long UnicodeChar;
- UnicodeChar getUnicodeChar(char *text, int &i)
- {
- UnicodeChar unicodeID = text[i];
- if ((unsigned char)text[i] > 0x7F) {
- while ((unsigned char)text[i] > 0x7F) {
- switch (((unsigned char)text[i] >> 6) & 0x3) {
- case 3: unicodeID = ((unsigned char)text[i] & 0x3F);
- break;
- case 2: unicodeID = (unicodeID << 6) | ((unsigned char)text[i] & 0x3F);
- break;
- default:
- break;
- }
- i++;
- }
- i--;
- }
- return unicodeID;
- }