Skip to content

Instantly share code, notes, and snippets.

@brodybits
Forked from gchudnov/cpp_utf8_utf16.cpp
Created November 9, 2017 17:07
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save brodybits/8c3b0f7ac12d6cfbc7982c806d33a79e to your computer and use it in GitHub Desktop.
Save brodybits/8c3b0f7ac12d6cfbc7982c806d33a79e to your computer and use it in GitHub Desktop.
C++ string conversion UTF8 <-> UTF16
#include <string>
#include <locale>
#include <codecvt>
//UTF-8 to UTF-16
std::string source;
//...
std::wstring_convert<std::codecvt_utf8_utf16<char16_t>,char16_t> convert;
std::u16string dest = convert.from_bytes(source);
//UTF-16 to UTF-8
std::u16string source;
//...
std::wstring_convert<std::codecvt_utf8_utf16<char16_t>,char16_t> convert;
std::string dest = convert.to_bytes(source);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment