Я хочу знать значение ANSI символа «\ u202B», которое выполняет выравнивание RTL в текстовом файле, проблема, которую я использовал в файле UTF8, и он делает текст RTL, но когда текстовый файл является ANSI, он показывает отметки "???" это означает, что этот символ не идентифицирован, поэтому любой может знать, какой противоположный код для этого символа в ANSI?

-1
Mahmoud Ismail 15 Июл 2014 в 15:39

2 ответа

Лучший ответ

Windows-1256 является «кодовой страницей ANSI», если языковой стандарт системы установлен на арабский. Неправильное название, но это то, что называется всей документацией MS ... В мире Windows "кодовая страница ANSI" должна читаться как "системная кодовая страница"

В любом случае, U + 202B не имеет эквивалента в windows-1256. Вероятно, вы сможете добиться того, что вам нужно, с помощью

U+200E  LEFT-TO-RIGHT MARK    0xFD in windows-1256
U+200F  RIGHT-TO-LEFT MARK    0xFE in windows-1256  
1
Mihai Nita 16 Июл 2014 в 03:33

Нет ни одного. ANSI - довольно старый стандарт, разработанный Американским национальным институтом стандартов. Он не поддерживает языки RTL, такие как арабский или иврит.

В статье Википедии «escape-код ANSI» перечислены все коды, которые он поддерживает.

Обходной путь - использовать шрифт, который отображает нужные глифы (символы), печатать их в обратном порядке и использовать команды перемещения курсора для выравнивания текста по правому краю.

[EDIT] Вы путаете пару вещей. Прежде всего, ANSI - это набор управляющих последовательностей для управления вашим терминалом.

ASCII, Windows 1256 и UTF-8 - это кодировки символов (т. Е. Способы представления текста в виде последовательностей октетов или байтов).

Юникод - это библиотека глифов. Он пытается содержать каждый глиф, необходимый для отображения текста на любом языке. Вы можете кодировать данные Unicode, используя UTF-8, -16 и т. Д., Чтобы сериализовать их.

Специальный символ Unicode RIGHT-TO-LEFT EMBEDDING (U + 202B) не имеет представления в какой-либо другой кодировке символов.

Вам нужно будет написать программу для анализа ввода, а затем вам нужно будет вывести текст на принтер, отсортировав символы в правильном порядке. Для этого нет ярлыка.

0
Aaron Digulla 15 Июл 2014 в 12:17