matlab::cpplib::convertUTF8StringToUTF16String

Перевод строки в кодировке UTF-8 в строку в кодировке UTF-16

Описание

std::u16string & ustr convertUTF8StringToUTF16String(const std::string & str)

Преобразуйте строку UTF-8 (ASCII или Unicode®) к строке UTF-16. Используйте эту функцию, чтобы преобразовать строки ASCII в форму, требуемую представлять опции запуска (передал initMATLABApplication), или имена функций или matlab::data::array.

Добавление префикса u к literal char * строка является более краткой альтернативой, которая достигает того же эффекта как convertUTF8StringToUTF16String когда литеральная строка передается в качестве параметра. Например, вы могли записать initMATLABLibrary(app, u"mylib"); вместо более длинного initMATLABLibrary(app, convertUTF8StringToUTF16String("mylib")); и получите те же результаты.

Примечание

Добавление префикса u не поддерживается Visual C++® 2013.

Параметры

const std::string & str

UTF-8 (возможно ASCII) строка.

Возвращаемое значение

std::u16string

Строка UTF-16-encoded.

Исключения

std::range_error

Вход не является допустимой строкой UTF-8.

Примеры

Перевод строки в кодировке UTF-8 в строку в кодировке UTF-16

auto app = initMATLABApplication(MATLABApplicationMode::IN_PROCESS);
const char * libName = getLibNameFromConfigFile(); // imaginary user-defined function
auto mylib = initMATLABLibrary(app, convertUTF8StringToUTF16String(libName));
Введенный в R2018a