2011-11-15 7 views
6

Non sono sicuro che le interruzioni di riga siano consentite nei valori JSON. Io certamente sono in grado di creare la seguente in JSONpreservare interruzioni di riga nei valori nelle coppie di valori-chiave JSON

{"foo": "I am not sure if line breaks are 
     allowed in JSON values. I certainly 
     am unable to create the following in JSON"} 

seguito di certo non funziona

{"foo": "I am not sure if line breaks are\nallowed in JSON values. I certainly\nam unable to create the following in JSON"} 

Preambolo: Voglio inviare un messaggio lungo come sopra o al browser o alla console app e visualizzarlo ordinatamente formattato in modo che sia leggibile per l'utente.

+0

Vedere un simile [domanda SO risposta] (http://stackoverflow.com/questions/42068/how-do-i-handle-newlines-in-json) –

+1

Sei riuscito a trovare una soluzione a Questo? –

+0

possibile duplicato di [Stringhe multilinea in JSON] (http://stackoverflow.com/questions/2392766/multiline-strings-in-json) – PhoneixS

risposta

0

Se lo si sta visualizzando in HTML, lo sarà semplicemente
. Oppure in un'area di testo o qualcosa del genere, prova "\ r \ n", racchiuso tra virgolette. I doppi backslash devono fuggire.

+0

non funziona ... si presenta come letterale \ r \ n – punkish

+0

Prova a fuggire come "\\ r \\ n" –

1

Se si sta visualizzando (o inserendo) il valore di json direttamente in HTML, non è possibile utilizzarlo perché è in html che le nuove righe vengono ignorate e sostituite da uno spazio.

Per esempio se si dispone di:

<p>Hello, 
I'm in other line.</p> 

sarà rappresentata come:

Ciao, sono in linea.

È necessario convertire le nuove linee a paragrafo o <br>, ad esempio:

<p>Hello,<br> 
I'm in other line.</p> 

Questo sarà spettacolo come:

Ciao,

Sono in altra linea

Se questo è il tuo caso, puoi semplicemente usare String.replace per cambiare \n in <br>\n.