Как обрабатывать текст TextView "\\ uxxxx" не удалось в Android? - PullRequest
0 голосов
/ 04 апреля 2019

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

Я обнаружил, что проблема вызвана "\ uxxxx" и "\ uxxxx". Система возвращает значение «\ uxxxx».

Китайские слова могут быть показаны, если я жестко закодирую строку, передаваемую в нее, например

Title.setText("\u4F60\u597D\u55CE");
\\ the chinese words can show properly as "你好嗎"

Title.setText("\\u4F60\\u597D\\u55CE");
\\ the words show as "\u4F60\u597D\u55CE"

Я пытаюсь сравнить разные:

Log.i("setTitle", String.valueOf(Title.equals("\u4F60\u597D\u55CE")));
//returned false but should be true


Log.i("setTitle", String.valueOf(Title.equals("\\u4F60\\u597D\\u55CE")));
//returned true but should be false

Я пробовал

Title.replace("\\\\u","\\u");
Title.replace("\\\\","\\");

все это дает тот же результат в моем коде сравнения

Я даже пытался

Title.replace("\\","").replace("u", "\\u")

Я все еще не могу получить желаемый результат.

Просто хочу спросить, есть ли способ показать китайский символ с юникодом в TextView.setText ()?

1 Ответ

0 голосов
/ 04 апреля 2019

Просто замените все \\u на \u перед установкой его в Textview, и это должно работать.

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