serie serenity reparto pelicula online firefly android xml escaping arrays

serenity - Escapa mĂșltiples personajes "%" en Android



firefly wikipedia (3)

En <string-array name = "versions"> tengo esta bestia de una entrada (reducida a un mínimo razonable para reproducir el efecto):

<item>100% foo 40%bar</item>

que produce estos errores:

Multiple annotations found at this line: - error: Multiple substitutions specified in non-positional format; did you mean to add the formatted="false" attribute? - error: Found tag </item> where </string-array> is expected

Agregar formatted = "false" no cambia nada.

<item>100&#37; foo 40&#37;bar</item>

resulta en los mismos mensajes de error. ¿Qué?

<item>100% foo 40bar</item> <item>100 foo 40%bar</item> <item>100% foo 40%</item>

todo funcionaria bien Escapar de él con /% simplemente se ignora y se produce el mismo error. %% no produce un error pero obtengo %%.


Codificar cada uno como un carácter Unicode en el xml funciona para mí:

<string name="test">100/u0025 foo 40/u0025bar</string>


El % es un carácter reservado en XML como < , > , etc. Use %% para cada % que esté usando en el recurso de cadena.


Usar CDATA puede funcionar ..

<item><![CDATA[100% foo 40%]]></item>