std:: wstring_convert
|
Определено в заголовочном файле
<locale>
|
||
|
template
<
class
Codecvt,
|
(начиная с C++11)
(устарело в C++17) (удалено в C++26) |
|
Шаблон класса
std::wstring_convert
выполняет преобразования между байтовой строкой
std::string
и широкой строкой
std::
basic_string
<
Elem
>
, используя отдельный фасет преобразования кодировки
Codecvt
.
std::wstring_convert
принимает на себя владение фасетом преобразования и не может использовать фасет, управляемый локалью.
Стандартные фацеты, подходящие для использования с
std::wstring_convert
— это
std::codecvt_utf8
для преобразований UTF-8/UCS-2 и UTF-8/UCS-4, и
std::codecvt_utf8_utf16
для преобразований UTF-8/UTF-16.
Содержание |
Вложенные типы
| Тип | Определение |
byte_string
|
std:: basic_string < char , std:: char_traits < char > , Byte_alloc > |
wide_string
|
std:: basic_string < Elem, std:: char_traits < Elem > , Wide_alloc > |
state_type
|
typename Codecvt :: state_type |
int_type
|
typename wide_string :: traits_type :: int_type |
Члены данных
| Член | Описание |
byte_string
byte_err_string
|
байтовая строка для отображения при ошибках
( объект-член только для демонстрации* ) |
wide_string
wide_err_string
|
расширенная строка для отображения при ошибках
( объект-член только для демонстрации* ) |
Codecvt
*
cvtptr
|
указатель на выделенный объект преобразования
( объект-член только для демонстрации* ) |
state_type
cvtstate
|
объект состояния преобразования
( объект-член только для демонстрации* ) |
std::
size_t
cvtcount
|
счетчик преобразований
( объект-член только для демонстрации* ) |
Функции-члены
создает новый
wstring_convert
(публичная функция-член) |
|
|
operator=
|
оператор присваивания копированием удален
(публичная функция-член) |
уничтожает
wstring_convert
и его фасет преобразования
(публичная функция-член) |
|
|
преобразует байтовую строку в широкую строку
(публичная функция-член) |
|
|
преобразует широкую строку в байтовую строку
(публичная функция-член) |
|
|
возвращает количество успешно преобразованных символов
(публичная функция-член) |
|
|
возвращает текущее состояние преобразования
(публичная функция-член) |
Смотрите также
|
Преобразования символов
|
Многобайтовые, определенные локализацией
(UTF-8, GB18030) |
UTF-8
|
UTF-16
|
|---|---|---|---|
| UTF-16 | mbrtoc16 / c16rtomb (с DR488 из C11) |
codecvt
<
char16_t
,
char
,mbstate_t
>
|
Н/П |
| UCS-2 | c16rtomb (без DR488 из C11) | codecvt_utf8 < char16_t > | codecvt_utf16 < char16_t > |
| UTF-32 |
codecvt
<
char32_t
,
char
,mbstate_t
>
|
codecvt_utf16 < char32_t > |
|
|
Системный
wchar_t
:
UTF-32
(не-Windows)
|
mbsrtowcs
/
wcsrtombs
|
codecvt_utf8 < wchar_t > | codecvt_utf16 < wchar_t > |
|
(C++11)
(deprecated in C++17)
(removed in C++26)
|
выполняет преобразование между буфером байтового потока и буфером широкого потока
(шаблон класса) |
|
(C++11)
(deprecated in C++17)
(removed in C++26)
|
преобразует между UTF-8 и UCS-2/UCS-4
(шаблон класса) |
|
(C++11)
(deprecated in C++17)
(removed in C++26)
|
преобразует между UTF-8 и UTF-16
(шаблон класса) |