studio strings quot escape array apos android xml escaping

quot - Error en el archivo strings.xml en Android



strings.xml android studio (8)

He declarado una cadena larga en string.xml de una aplicación.

Declarado así

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

Pero esto da el siguiente error:

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


Solución

Los apóstrofos en strings.xml deben escribirse como

/'


Ejemplo

En mi caso, tuve un error con esta cadena en mi strings.xml y lo arreglé.

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

Aquí puede ver que mi aplicación se compila correctamente con ese código.

Aquí está la cadena real en mi aplicación.


¿Dónde está su apóstrofo usado cuerda? No puedo encontrar eso. por favor publícalo. Si necesita usar un apóstrofo en su cadena, solo use la secuencia de escape "/" como esta.

Creo que la imagen de arriba aclarará tus dudas.


Puede utilizar equivalente unicode tanto apóstrofo como otros caracteres que no son compatibles con la cadena xml. El equivalente de Apostrophe es "/ u0027".


Tienes que poner / antes de un apóstrofo. Como este / '', también compruebe que está editando strings.xml y no values.xml (android studio lo dirige a este archivo cuando muestra el error). Porque si edita values.xml e intenta compilar de nuevo, el error persiste. Esto me estaba sucediendo recientemente.


Uso hebreo (lenguaje RTL) en strings.xml. He buscado manualmente el string.xml para este char: ''de lo que agregué el escape char / infront (ahora parece /') y todavía tengo el mismo error!

Busqué de nuevo el char ''y reemplacé el char'' con / ''(escritura en eng), ya que muestra de derecha a izquierda, parece que'' / in the strings.xml !!

Problema resuelto.



developer.android.com/guide/topics/resources/…

Escape de apóstrofes y citas

Si tiene un apóstrofo o una cita en su cadena, debe escapar de ella o incluir toda la cadena en el otro tipo de comillas adjuntas. Por ejemplo, aquí hay algunas picaduras que funcionan y no funcionan:

<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>


1. por error: apóstrofo sin escalar en cuerda

lo que encontré es que la herramienta AAPT2 apunta a la fila incorrecta en xml, a veces. Por lo tanto, debe corregir todo el archivo strings.xml

En Android Studio, en el uso del archivo problemático:

Editar-> buscar-> reemplazar

Luego escriba en el primer campo / ''(o / &,>, / <, / ")
en segundo puesto ''(o &,>, <, ")
luego reemplace cada uno si es necesario. (o "reptlace todo" en caso de que con '')
Luego, en el primer campo, vuelva a poner ''(o &,>, <, ")
y en segunda escritura / ''
luego reemplace cada uno si es necesario. (o "reemplace todo" en caso de que con '')

2. para otros símbolos problemáticos
Uso para comentar cada media parte + reconstrucción hasta que no encuentre el signo equivocado.

Por ejemplo, una palabra escapada "/ update" inesperadamente descarta dicho error :)