Преобразование между wchar_t* в строку
Я пытался создать клиент на C++ для веб-службы с помощью служебной программы метаданных модели обслуживания, установил связь между двумя конечными точками, но на стороне клиента я получил wchar_t*
Как я могу преобразовать его в строку?
Примечание: на стороне сервера используется кодировка UTF-8.
2 ответа
Решение
Используйте эту простую функцию:
std::string wchar2string(wchar_t* str)
{
std::string mystring;
while( *str )
mystring += (char)*str++;
return mystring;
}
Я надеюсь, что эта функция может помочь вам!
Ты можешь использовать std::wstring
который имеет конструктор, который принимает wchar_t*
,