2017-01-18 8 views
0

Я использую Localio, чтобы извлечь переводы для моих приложений IOS и Android.Как обрабатывать апострофы в файлах локализации Android?

С IOS у меня нет проблемы. Но Android не позволяет мне использовать апострофы, не ускользая. Но Localio-код этого не делает. Например:

<string name="account_suspended_message">Ce compte a été suspendu. S'il vous plaît contacter l'administrateur.</string> 

Это дает

Apostrophe not preceded by \ 

ошибку.

Как я могу избежать таких ошибок? Должен ли я писать сценарий для этого?

+0

Ответ в пределах вашего вопроса. Просто представьте свой апостроф / – user1396033

ответ

0

Просто, вы должны предшествовать всем апостроф с \, как следует

<string name="account_suspended_message">Ce compte a été suspendu. S\'il vous plaît contacter l\'administrateur.</string> 

Вы можете написать вручную или с помощью сценария, как вы хотите

0

Я предлагаю вам использовать Переводчик редактор Android Studio, он будет управлять этими вещами для вас.

Когда вы открываете свой файл strings.xml, над ним есть панель, которая открывается в редакторе.

Проще.

0

Не используйте прямой (ASCII) апостроф в переводах - вместо этого используйте типографский апостроф. Код символа Юникод - U + 2019, и в соответствии с http://www.unicode.org/charts/PDF/U2000.pdf это предпочтительный символ, который будет использоваться для апострофа, и он работает как для Android, так и для iOS.

Если вам абсолютно необходимо использовать одиночную прямую цитату в качестве апострофа, вам нужно сбежать от нее, предварительно наложив на нее обратную косую черту. Использование &apos;, как и следовало ожидать в XML, не поддерживается Android.

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

  • Нет связанных вопросов^_^