
Шли годы, а ололо-восьмибитные-анси-шманси всё ещё бредили UTF-8 и прочими юникодами, не желая знать, что в NT испокон веков используется UTF-16.
http://juick.com/Strephil/2820795
Дата рождения: 01.11.1983
Тотальная неудачница и убийца жёстких дисков. Самая большая поклонница Ариэль. Член ордена Вселенского тормоза имени Осаки-сан. Любительница каваййных переднеприводных машинок. Суккуб на полставки. Когти прилагаются.
Шли годы, а ололо-восьмибитные-анси-шманси всё ещё бредили UTF-8 и прочими юникодами, не желая знать, что в NT испокон веков используется UTF-16.
http://juick.com/Strephil/2820795
технически там всё же UCS-2
UCS-2 это старая вещь, в которой не было суррогатных пар и считалось, что 65536 characters should be enough for everybody :) та же фигня и с джавой. но это не суть вопроса )
суть в том, что у WinAPI 2 режима - Unicode и 8-bit, причем юникод надо явно включать. говнокодеры как всегда не в курсе. а 8-bit до сих пор проблемно - надо на всю систему ставить из какой кодировки делать уникод
возможно, что возможность установить, что 8-битный режим - это UTF-8 улучшила бы дело, с возможностью для отдельных прог выставить нужные кодировки
примерно так щас работает Qt - там обычно работа вовне идет с utf-8, а внутреннее представление - в utf-16
Я подозреваю, что превращение ANSI режима в UTF-8 Microsoft не сделала по той причине, что возникают серьёзные проблемы обратной совместимости. В любом случае тут решение одно: не MS подстраиваться под криворучек, а криворучкам повышать уровень знаний и прекращать пытаться из Windows сделать Линукс.
Тут пишут, что поддержка всего этого уже есть:
https://msdn.microsoft.com/...374069(v=vs.85).aspx