Я хотел бы знать, как преобразовать массив байт в строку, заданный кодированная схему напримерПреобразовать массив байт в закодированную строку
string Convert2Str(byte* b, UTF32);
string Convert2Str(byte* b, UTF7);
etc
Я хотел бы знать, как преобразовать массив байт в строку, заданный кодированная схему напримерПреобразовать массив байт в закодированную строку
string Convert2Str(byte* b, UTF32);
string Convert2Str(byte* b, UTF7);
etc
Там нет стандартного C++ способа сделать это.
Некоторые библиотеки сторонних производителей могут конвертировать кодировки (например, UTF8-CPP).
Примечание:byte
не является стандартом C++ тип либо. Вероятно, вы имели в виду uint8_t
.
спасибо, мне нужно utf7, 8,16,32, все, кроме вашего utf8-cpp, только utf8, которого недостаточно. –
Да, я определяю его как uint8_t только для того, чтобы его было легче понять. Я называю его байтом. –
@MolitaBolida. Затем изучите другие сторонние библиотеки, которые отвечают вашим требованиям (я уверен, что есть некоторые доступные). В любом случае, задавать вопрос о том, что касается некоторых, это вне темы. –
В C. нет типа 'string'. Предложите удалить тег C. – chux
Единственная ссылка в C++, которую я нашел, это 'SysTestAssert.convert2str()', принимающая только один аргумент. Вы можете попробовать этот вопрос: http://stackoverflow.com/questions/5451305/how-to-make-function-argument-container-independent –
https://www.gnu.org/software/libiconv/ –