BOOL isBig5(const unsigned char ucHigh, const unsigned char ucLow) { if ( ( ucHigh >= 0xA1 ) && ( ucHigh <= 0xF9 ) ) { if ( ( ucLow >= 0x40 ) && ( ucLow <= 0x7E ) ) { return TRUE; } else if ( (ucLow >= 0xA1 ) && ( ucLow <= 0xFE ) ) { return TRUE; } } return FALSE; } BOOL isGBK(const unsigned char ucHigh, const unsigned char ucLow) { DWORD dwA = ( ( DWORD(ucHigh) << 8 ) + DWORD(ucLow) ); if ( ( dwA > 0x8140 ) && ( dwA <= 0xFEFE ) && ( ucLow != 0xFF ) ) { return TRUE; } return FALSE; }