Intereting Posts
Добавление пространства между столбцами таблицыLayout Как предотвратить использование drawBitmap для Android только для рисования черных изображений? Как реализовать тип завитки страницы, используемый в Google Play Книгах? CollapsingToolbarLayout и скрывать панель инструментов при прокрутке Android: Autocomplete TextView похож на приложение Facebook RecyclerView – получить все существующие виды / зрители Как вы создаете Preference Activity и Preference Fragment на Android? Android Layout делает все дети недоступными для просмотра Как получить статус флажка в расширяемом списке в android Сообщение «Поле может быть преобразовано в локальную переменную» появляется при настройке цвета панели действий Android, приложения для загрузки и обновления в Google Play Как отключить проверку орфографии для Android AutoCompleteTextView? Остановить фрагмент после воссоздания после возобновления? Командная команда Run-android GCM возвращает тип нулевого сообщения

Ошибка в файле strings.xml в Android

Я объявил длинную строку в string.xml приложения.

Объявлено так

 <string name="terms">PLEASE READ THESE TERMS OF USE CAREFULLY BY ACCESSING THIS .................</string> 

Но это приводит к следующей ошибке:

 error: Apostrophe not preceded by \ (in PLEASE READ THESE TERMS OF USE CAREFULLY 

Solutions Collecting From Web of "Ошибка в файле strings.xml в Android"

Опубликуйте свою полную строку. Хотя, по моему мнению, в вашей строке есть символ апострофа ('). Замените его на (\), и он исправит проблему. например,

 //strings.xml <string name="terms"> Hey Mr. Android, are you stuck? Here, I\'ll clear a path for you. </string> 

Ref:

http://www.mrexcel.com/forum/showthread.php?t=195353

http://code.google.com/p/replicaisland/issues/detail?id=48

Решение

Апострофы в strings.xml должны быть записаны как

 \' 


пример

В моем случае у меня была ошибка с этой строкой в файле strings.xml, и я исправил ее.

 <item>Most arguments can be ended with three words, "I don\'t care".</item> 

Здесь вы видите, что мое приложение правильно работает с этим кодом.

Введите описание изображения здесь

Вот фактическая строка в моем приложении.

Введите описание изображения здесь

Вы должны поставить перед апострофом. Например, также проверьте, что вы редактируете файл strings.xml, а не values.xml (андроид-студия направляет вас к этому файлу при отображении ошибки). Потому что, если вы отредактируете values.xml и попытаетесь снова скомпилировать, ошибка не исчезнет. Это происходило со мной в последнее время.

https://developer.android.com/guide/topics/resources/string-resource.html#FormattingAndStyling

Исключение апострофов и цитат

Если у вас есть апостроф или цитата в вашей строке, вы должны либо сбежать от нее, либо заключить целую строку в другие закрывающие кавычки. Например, вот некоторые жало, которые работают и не работают:

 <string name="good_example">"This'll work"</string> <string name="good_example_2">This\'ll also work</string> <string name="bad_example">This doesn't work</string> <string name="bad_example_2">XML encodings don&apos;t work</string> 

Я использую иврит (язык RTL) в файле strings.xml. Я вручную искал string.xml для этого символа: ', чем я добавил escape char \ infront (теперь он выглядит как), и все равно получил ту же ошибку!

Я снова искал char ', и я заменил char' на '(eng writing), так как он показывает право налево, это выглядит так: \ in the strings.xml !!

Задача решена.

Вы можете использовать эквивалент unicode как апостроф, так и другие символы, которые не поддерживаются в строке xml. Апостофский эквивалент «\ u0027».