@ tObi, ах, я неправильно понял ваш оригинальный комментарий. Спасибо за разъяснения.

у иметь возможность распознавать китайские, японские и корейские письменные символы как в качестве общей группы, так и в качестве разделенных языков. Вот причины:

Признать CJK в качестве общей группы: Я делаю вертикальный сценарий монгольскийTextView, Для этого мне нужно повернуть строку текста на 90 градусов, потому что глифы хранятся в шрифте горизонтально. Однако для языков CJK мне нужно снова повернуть их назад, чтобы они были написаны в правильной ориентации, а просто сложены друг на друга по линии.Дифференцировать CJK на конкретные языки: Я также делаю монгольский словарь, и когда пользователи вводят символ CJK для поиска, я хотел бы автоматически распознавать язык. Поскольку китайские иероглифы также используются японцами и корейцами, я предполагаю, что не смогу полностью выполнить это, но я хочу сделать это в максимальной степени, насколько это позволяет кодирование.

С лингвистической стороны подкатегории, о которых я знаю,

Китайские традиционные символыКитайские упрощенные символыЯпонский кандзи (Китайские символы)Японская хирагана (родной алфавит)Японская катакана (алфавит для написания иностранных слов)Корейский хангул (Фонетические)Корейский ханджа (Китайские символы)

Для полноты картины китайские иероглифы также используются ввьетнамский (такДальневосточные также называется CJKV). Для моих текущих целей мне не нужно беспокоиться об этом, но это может быть будущее соображение. Я также игнорирую латинизированные сценарии, такие как китайскийпиньинь или японскийромадзи, Они будут обрабатываться так же, как английский и монгольский в TextView (то есть повернутые на 90 градусов с остальной частью линии).Бопомофо использование на Тайване также может стать вопросом будущего, но я пока проигнорирую его. Смотрите такжеВот а такжеВот для примеров языка.

Я видел несколько связанных вопросов, которые обычно касаются одного конкретного языка в Java или Android, но не было всеобъемлющего вопроса с каноническим ответом. Другие вопросы являются более общими для Unicode, но не рассказывают, как это сделать в Java и Android. Вот некоторые из конкретных.

Как проверить, является ли данный текст английским или китайским в Android?Как я могу обнаружить японский текст в строке Java?Проверьте, содержит ли строка символы CJK (китайский)Используйте регулярное выражение для сопоставления ЛЮБОГО китайского символа в кодировке utf-8Тестирование на японские / китайские иероглифы в строкеРазличное представление кодовых точек юникода на японском и китайскомПроверьте, является ли персонаж традиционным китайским в Big-5 (Java)?Символы Юникода, необходимые для японского, корейского и китайского языковИмеют ли одинаковые китайские иероглифы, используемые cjk, одинаковые значения в юникодеКаков полный диапазон китайских символов в Юникоде?

Поэтому мой вопрос: насколько я могу дифференцировать языки CJK, используя кодовые точки Unicode, и как я могу их тестировать в Android? Я видел несколько новых тестов в Java и Android, и хотя они полезны для понимания, мне также нужно поддерживать старые устройства Android.

Ответы на вопрос(1)

Ваш ответ на вопрос