2011-11-22 17 views
6

Sembra esserci una lunghezza massima di quanti caratteri può contenere una stringa. Nel mio caso viene popolato con HTML tramite JSON e con circa 1500 caratteri si blocca.Lunghezza massima di una variabile di stringa in Android

Non ci sono caratteri speciali nel testo tranne HTML.

C'è un modo per aggirare questo o è vero?

Cheers,

Mike.

+2

Pubblica il tuo log degli errori Penso che tu abbia altri problemi. – user370305

risposta

4

I valori massimi (sia pratici che teorici) sono molto più alti. In teoria, è 2^31 - 1 caratteri. In pratica, sarai limitato alla memoria disponibile, ma anche su un sistema mobile avrai più di 1,5 KB.

Hai un altro problema. Utilizzare JSON Lint per verificare innanzitutto di disporre di JSON valido.

+0

Mi piace JSON Lint, grazie per l'avviso. È valido però! –

1

È lo stesso di quello che offre Java. Se comprendo correttamente la tua domanda, stai provando a leggere i dati HTML (come JSON) da un servizio e si blocca dopo aver ricevuto una certa risposta. In questo caso, prova se la stessa operazione funziona dal tuo browser o tramite un semplice modulo HTML.

+0

Grazie ragazzi, proviene da un servizio e funziona perfettamente con un'applicazione client basata su browser e se accedo al metodo direttamente tramite un URI in un browser ad esempio ... articles.svc/GetArticles e in Fiddler, ma non lo fa funziona se la stringa è troppo lunga sul mio telefono o sull'emulatore. In questo modo l'ho ristretto e ho pensato che ci fosse una restrizione sulla lunghezza della stringa in Java. Non penso che sia un problema di memoria in quanto è solo di 1500 caratteri. Anche l'unico codice HTML nella stringa è

. –

+0

Inoltre passa attraverso un ArrayAdapter prima di essere inserito nella stringa! e si blocca prima che venga richiesto di visualizzarlo ovunque! –

0

Altrove in Stack Overflow ci sono menzioni di un limite di dimensione sul contenuto di ArrayAdapter. Questo potrebbe essere il tuo problema, non le stringhe XML o Java in generale.

Problemi correlati