Ответ 1
Согласно статье статьи в Википедии на GB18030, "GB18030 можно рассматривать как формат преобразования Юникода (т.е. кодирование всех кодов Unicode) который поддерживает совместимость с устаревшим набором символов". То есть все символы Юникода могут быть закодированы в GB18030, но они будут закодированы с помощью разных последовательностей байтов, которые будут сгенерированы с помощью UTF-8 или UTF-16. Обработка кодировки GB18030 не требует дополнительных методов, чем требуется для любой другой кодировки, отличной от Unicode.
Проект ICU - это библиотека с открытым исходным кодом (для C или Java), которая имеет полную поддержку множества различных кодировок, включая GB18030. Информацию о конвертации между различными кодировками в ICU можно найти здесь.