ANSI
Набор символов ANSI должен означать набор символов, определенный Американским национальным институтом стандартов (ANSI). Однако ANSI определили много разных наборов символов.
Microsoft и другие иногда неправильно используют имя "ANSI" для обозначения кодовой страницы 1252 (CP-1252), также называемой Windows-1252 или Windows-Latin-1. Этот набор символов не был одним из тех, которые определены ANSI. Этот набор символов похож на ISO-8859-1, но имеет много различий. Самое главное для этого вопроса Этот набор символов не включает в себя китайские иероглифы.
CP936
«Кодовая страница 936 - это кодировка символов Microsoft для упрощенного китайского языка, одна из четырех DBCS для языков Восточной Азии. Первоначально он был идентичен GB 2312 и расширен для охвата большей части GBK с выпуском Windows 95; теперь заменено кодовой страницей 54936 (GB 18030). "- Википедия
Iconv
Если вы попросите iconv преобразовать MS-ANSI или ISO-8859-1 в UTF-8, он не сможет интерпретировать какие-либо данные как китайские символы, поскольку в MS-ANSI или ISO-8859-1 таких символов не существует. ,
Вы должны сообщить iconv истинную кодировку вашего текстового файла. Если ваш текстовый файл действительно закодирован в CP936, и iconv сказал об этом, я ожидаю, что он будет работать.
Textpad
См критику текста
Microsoft
Продолжающееся злоупотребление Microsoft именем ANSI является позорным и продолжает вызывать у ее клиентов большую путаницу и потерю времени и денег. Как этот вопрос, вероятно, демонстрирует.
Microsoft действительно говорит: «Термин" ANSI ", используемый для обозначения кодовых страниц Windows, является историческим справочником и неправильным обозначением, которое сохраняется в сообществе Windows. Источник этого неправильного названия проистекает из того факта, что кодовая страница Windows 1252 изначально была основана на проекте ANSI, который стал стандартом Международной организации по стандартизации (ISO) 8859-1 [ISO/IEC-8859-1]. В Windows набор символов ANSI может быть любой из следующих кодовых страниц: 1252, 1250, 1251, 1253, 1254, 1255, 1256, 1257, 1258, 874, 932, 936, 949 или 950 ».
Обратите внимание на включение CP-936 в этот список.
К сожалению, многие другие веб-страницы на microsoft.com неправильно используют термин ANSI.