Сколько функций вам действительно нужно? Во многих случаях я нахожу преобразование внутри одного типа (например, UTF8) и обработку различных кодировок только тогда, когда загрузка или сохранение более чем достаточны. Если вы готовы потратить немного времени и написать класс, чтобы справиться с этим, я уверен, что вы будете использовать его снова и снова.
У меня где-то лежит, но iirc UTF32LE / BE не проверен: http://aaq.cc/d
Если вашему проекту действительно требуется обрабатывать различные кодировки, кроме загрузки / сохранения файлов, тогда вам, вероятно, лучше всего использовать библиотеку ...