A
Such a problem: the side method accepts the name of the element or archive const char* if the name contains Russian symbols, it does not work correctly.Con's in Utf8, it works, but I do it through a wstring test, who doesn't know how to fill out outside, like a console or some user interface.This only suggests that the side method awaits UTF-8, presented as a set of 8-bit symbols (const char*).The console has nothing to do with this.The console itself may not have to do with it (although to say), but this is what the elbow is. This determines in what form the data will be transmitted in the ranks. Like, if you're putting a line out of the console working in the ru_RU. CP1251 - 8-bit symbols will come in if ru_RU.UTF-8 - an already formed UTF-8 line will come to the entrance.Thus, the challenge is to take steps:Find the form (in which location) of data entryIf the 8-bit entry is pre-designed to UTF-8If UTF-8, just hand over it.But there are important comments.FirstUI is designed to work with symbols, not symbol codes! What does that mean? Various 8-bit codings (extended 128-255) define their own symbols that may not be available in 8-bit codings. So, "almost" an unambiguous transformation is possible only in one direction ASCII-stateUTF-8. Why? For example, if we take the Kyrillian symbols, the 0x98 symbol from cp1251 has no equivalent in either Unicode or UTF-8.SecondThe symbols in Unicode 4.0 (ISO/IEC 10646:2003) are defined as compiler-specific and may even be 8th. So, in order to be safe from change losses, I would advise instead of std:wstring to use http://www.cplusplus.com/reference/string/u32string/ ThirdUsing STL, of course, the best use of re-coded equipment is to make the code more computable. Nevertheless, if the programme is to provide the most complete set of UTF-8, including a variety of hieroglyphical codings, an external library can be looked at. http://site.icu-project.org/ ♪FourthTo work strictly with the Cyrillian, you can try writing your recoding procedures. For C+++, I don't see the need. But for pure C, in principle, you can. Below is a table that has been collected on different standards from http://unicode.org which I'm about to use to write my own library for Lua.