Мне нужны функции для преобразования между символом (например, 'α'
) и его полное имя Юникода (например, "GREEK SMALL LETTER ALPHA"
) в обоих направлениях.Как преобразовать символ в его полное имя Unicode?
Решение, которое я разработал, состоит в том, чтобы выполнить поиск в официальном стандарте Unicode, доступном в Интернете: http://www.unicode.org/Public/6.2.0/ucd/UnicodeData.txt, или, скорее, в его кешированной локальной копии, возможно, переделанной в подходящую коллекцию заранее, чтобы улучшить производительность поиска).
Есть ли более простой способ сделать эти преобразования? Я бы предпочел решение на C#, но также приветствуются решения на других языках, которые могут быть адаптированы к C#/.NET. Благодаря!
Решение, которое у вас есть, прекрасно звучит для меня, если быть честным. Формат файла выглядит достаточно просто, и я не думаю, что в этой области есть что-то еще. –
Эта ссылка, на которую вы указываете, похожа только на первые 1 миллион и должна легко вписываться в словарь. Символ должен быть уникальным, поэтому используйте его как ключ в словаре. Что касается описания - если он уникален, он может включать второй обратный словарь для скорости, но это удвоит память. – Paparazzi
@ Blam «только как первый миллион» (точнее, 1114109) ** ** все **. –