Господа, как нынче модно делать сабж? В смысле C++17/20.
На входе есть std::string/char* в текущей локали, на выходе надо получить char* в кодировке UTF8 для передачи в api.
Без необходимости преобразования в wstring. Желательно без промежуточного wstring.
На cppreference большая часть классов и методов, которые могут это выполнить, объявлены deprecated в c++17.
Здравствуйте, gandjustas, Вы писали:
G>Господа, как нынче модно делать сабж? В смысле C++17/20.
Я бы через это
https://www.boost.org/doc/libs/1_58_0/libs/locale/doc/html/group__codepage.html
Но я так понимаю, это не ответ на вопрос, как сделать это средствами C++17/20
Здравствуйте, gandjustas, Вы писали:
G>Господа, как нынче модно делать сабж? В смысле C++17/20.
Не по сути, но лучше поправить заголовок. ASCII это только младшие 128 кодов, поэтому если подойти формально, то strcpy() достаточно для ответа
Если имелась в виду 8-битка типа cp1251, лучше назвать её явно.
Если это что-то вроде GB2312, то всё хуже
G>На cppreference большая часть классов и методов, которые могут это выполнить, объявлены deprecated в c++17.
https://en.cppreference.com/w/cpp/locale/codecvt вроде ж не deprecated?
Что именно осталось из доступного и чем оно не нравится?
Здравствуйте, netch80, Вы писали:
N>https://en.cppreference.com/w/cpp/locale/codecvt вроде ж не deprecated?
N>Что именно осталось из доступного и чем оно не нравится?
Все нравится, но как использовать не понимаю. Мне нужно из char в char, в примере читает в wstring и слишком много приседаний класса, которые я не могу распарсить.
Здравствуйте, gandjustas, Вы писали:
G>Господа, как нынче модно делать сабж? В смысле C++17/20.
А не проще взять сишные
велосипеды или обязательно на C++ и STL?По той же ссылке функция тупо до неприличия
:
size_t u8_toutf8(char *dest, size_t sz, const uint32_t *src, size_t srcsz)
Здравствуйте, RonWilson, Вы писали:
RW>Здравствуйте, gandjustas, Вы писали:
G>>Господа, как нынче модно делать сабж? В смысле C++17/20.
RW>А не проще взять сишные велосипеды или обязательно на C++ и STL?По той же ссылке функция тупо до неприличия :
Вопрос больше с целью изучения языка, поэтому интересно что именно modern c++ предлагает.