It seems like a rather complicated issue to work with std::string and UTF8 and I cannot find a good explanation of do's and dont's.
How can I properly work with UTF8 in C++? It is rather confusing.
I've found boost::locale
and I set the global locale:
std::locale::global(boost::locale::generator()(""));
However, after this what do I need to think about, when can I get problems? Will writing/reading from file work as expected, string comparisons etc...?
So far I'm aware of the following:
std::regex
/boost::regex
will not work, In need to covnert to wide strings and use wregex.boost::algorithm::to_upper
will not work, need to useboost::locale::to_upper
Other than that what do I need to be aware of?