Я новичок в C ++, и сейчас я сталкиваюсь с тем, что мне нужно закодировать входную строку от пользователя из этой кодировки в шестнадцатеричное. Есть ли какая-либо соответствующая библиотека или функция в C ++, которая может иметь тот же вывод, что и Charset в Java? Я уже реализовал это в Java.
Мне нужно поддерживать следующие кодировки:
- US-ASCII Семибитовый ASCII, он же ISO646-US,aka Базовый латинский блок набора символов Unicode
- ISO-8859-1 ISO Латинский алфавит № 1, также известный как ISO-LATIN-1
- UTF-8 Восьмибитовый формат преобразования UCS
- UTF-16BE Шестнадцатибитный формат преобразования UCS, байтовый порядок старших порядков
- UTF-16LE 16-битный формат преобразования UCS, порядок байтов с прямым порядком байтов
- UTF-16 16-битный формат преобразования UCS, порядок байтов, определяемый дополнительной меткой порядка байтов
В Java я просто использовал
Charset charset = Charset.forName(Enum.valueOf(opentestsystem.otf.model.types.Encodings.class,
encoding.name()).toString());