История изменений
Исправление X512, (текущая версия) :
Я ненавижу UTF-8.
А я люблю. Всё остальное не нужно.
но он решительно не подходит в роли внутреннего представления программы.
Ещё как подходит. В подавляющем числе случаев в обращении к отдельным символам нет необходимости. Необходимо всегда использовать строки даже для одного символа и не пользоваться вообще концепцией символа.
разрабы MS тупо переписали все системные интерфейсы под UTF-16
Это такая же кодировка с переменным числом байт на символ как и UTF-8, смотрите суррогатные пары. Недавно в Windows 10 сделали поддержку UTF-8 в ANSI функциях, UTF-16 можно закапывать. Я считаю, что введение A/W функций и UTF-16 было ошибкой, как и многое другое в Windows NT. Windows 3.1 поддерживал multi-byte character encoding для японской кодировки Shift-JIS (некий японский аналог Юникода, помимо японского языка включает многие другие языки включая русский), могли бы и UTF-8 добавить.
Исправление X512, :
Я ненавижу UTF-8.
А я люблю. Всё остальное не нужно.
но он решительно не подходит в роли внутреннего представления программы.
Ещё как подходит. В подавляющем числе случаев в обращении к отдельным символам нет необходимости. Необходимо всегда использовать строки даже для одного символа и не пользоваться вообще концепцией символа.
разрабы MS тупо переписали все системные интерфейсы под UTF-16
Это такая же кодировка с переменным числом байт на символ как и UTF-8, смотрите суррогатные пары. Недавно в Windows 10 сделали поддержку UTF-8 в ANSI функциях, UTF-16 можно закапывать. Я считаю, что введение A/W функций и UTF-16 было ошибкой, как и многое другое в Windows NT. Windows 3.1 поддерживал multi-byte character encoding для японской кодировки Shift-JIS (некий японский аналог Юникода, помимо японского языка включает многие другие языки включая русский), могди бы и UTF-8 добавить.
Исходная версия X512, :
Я ненавижу UTF-8.
А я люблю. Всё остальное не нужно.
но он решительно не подходит в роли внутреннего представления программы.
Ещё как подходит. В подавляющем числе случаев в обращении к отдельным символам нет необходимости. Необходимо всегда использовать строки даже для одного символа и не пользоваться вообще концепцией символа.
разрабы MS тупо переписали все системные интерфейсы под UTF-16
Это такая же кодировка с переменным числом байт на символ как и UTF-8, смотрите суррогатные пары. Недавно в Windows 10 сделали поддержку UTF-8 в ANSI функциях, UTF-16 можно закапывать.