2011-11-22 20 views
6

Parece haber una longitud máxima de cuántos caracteres puede contener una cadena. En mi caso, se está llenando con HTML a través de JSON y en alrededor de 1500 caracteres se bloquea.Longitud máxima de una variable de cadena en Android

No hay caracteres especiales en el texto, aparte de HTML.

¿Hay alguna forma de evitar esto o es así?

Cheers,

Mike.

+2

Publique su registro de error Creo que tiene otros problemas. – user370305

Respuesta

4

Los máximos (tanto prácticos como teóricos) son mucho más altos. Teóricamente, son 2^31 - 1 caracteres. En la práctica, estará limitado a la memoria disponible, pero incluso en un sistema móvil tendrá más de 1.5 KB.

Tiene un problema diferente. Use JSON Lint para verificar primero que tiene JSON válido.

+0

Me gusta JSON Lint, gracias por la información al respecto. ¡Es válido sin embargo! –

1

Es lo mismo que ofrece Java. Si entiendo su pregunta correctamente, está tratando de leer datos HTML (como JSON) de un servicio y se bloquea después de recibir cierta respuesta. Si ese es el caso, intente si la misma operación funciona desde su navegador o mediante un formulario HTML simple.

+0

Gracias chicos, viene de un servicio y funciona bien en una aplicación basada en navegador de cliente y si tengo acceso al método directamente a través de un URI en un navegador, por ejemplo, ... articles.svc/GetArticles y en Fiddler, pero no funciona funciona si la cadena es demasiado larga en mi teléfono o en el emulador. Así es como lo reduje y pensé que debe haber una restricción en la longitud de la cadena en Java. No creo que sea un problema de memoria, ya que solo tiene 1500 caracteres. Además, el único código HTML en la cadena es

. –

+0

¡También pasa por un ArrayAdapter antes de ser puesto en la cadena! ¡y se cuelga antes de que se le solicite mostrarlo en cualquier lugar! –

0

En otras partes de Stack Overflow se menciona un límite de tamaño en el contenido de ArrayAdapter. Este puede ser su problema, no cadenas de XML o Java en general.

Cuestiones relacionadas