exponenta event banner

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 в литерал 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