2015-02-26 3 views
0

Я разрабатываю многоязычное приложение для Android, но я не могу отображать специальные персонажи (например: é или è). Я попытался заменить символы с их ссылкой (eacute), но он говорит: «Объект & eacute был указан, но не был объявлен».Акцентированные символы в Android XML

XML с помощью специальных caracters:

<string name="welcomeMsg1">Cette application a été conçu à fin de vous guider.</string> 

Когда я использовать вышеуказанный файл XML, не отображается специальный caracters. Поэтому я заменяю специальные символы соответствующими ссылками.

XML, со ссылками:

<string name="welcomeMsg1">Cette application a &eacute;t&eacute; con&ccedil;u &aacute; fin de vous guider.</string> 

Код выше генерирует ошибку.

Я не мог найти решение, поэтому, если кто-то может помочь, я буду очень благодарен. Спасибо

+1

Пожалуйста вывесить ошибку. Благодарю. –

+0

Объект «eacute» был указан, но не объявлен –

+0

Это звучит как проблема с кодировкой, объявляете ли вы свою кодировку в своем XML-файле? – jvrodrigues

ответ

0

Два решения. Первая требует создания DTD для ваших xml-документов и объявления <!ENTITY> типов в DTD. Вы можете это сделать Google.

Второе решение довольно изящное, но я не знаю, будет ли оно работать. Спецификация HTML имеет объявление типов сущностей, которое должно быть достаточным. Я нашел это на:

https://stackoverflow.com/questions/16103554/eacute-%C3%A9-need-to-show-as-it-is

String modString = Html.fromHtml(Html.fromHtml((String) yourstring).toString()); 

Согласно сообщению, приведенный выше код должен дать вам стилизованную строку с добавлением ваших персонажей.

HTML Entity Листинг http://help.dottoro.com/lausooxp.php

+0

Большое спасибо за ответ. Но проблема заключалась не в кодировании, а в объявлении Entity. Я использовал специальный шрифт для отображения текста, и он не поддерживает специальные символы. Спасибо, что нашли время ответить на мой вопрос. –

0

Вы должны заменить акцентированные символы в strings.xml с их значением Юникода.

Например, вместо написания ó можно было бы написать \u00f3

Смежные вопросы