Rappresenta lo spazio e la scheda nel tag XML

Come rappresentare lo spazio e la scheda nel tag XML. C’è qualche personaggio speciale da rappresentare per loro.

Penso che potresti usare uno spazio o una tabulazione reale direttamente nel documento XML, ma se stai cercando caratteri speciali per rappresentarli in modo che i processori testuali non possano rovinarli, allora è:

space =   tab = 	 

Lavora per me

 \n = 
 \r = 
 \t = 	 space =   

Ecco un esempio su come usarli in XML

  

Non puoi avere spazi e tabulazioni nel tag (es. Nome) di un elemento XML, vedi le specifiche: http://www.w3.org/TR/REC-xml/#NT-STag . Oltre ai caratteri alfanumerici, i caratteri dei due punti, sottolineatura, trattino e punto sono consentiti in un nome e la prima lettera non può essere un trattino o un punto. Alcuni caratteri unicode sono anche permessi, senza in realtà un doppio controllo, direi che si tratta di lettere internazionali.

Nuova, estesa risposta a una vecchia domanda frequente …

Spazio bianco nei nomi dei componenti XML

Riepilogo: i caratteri di spaziatura non sono consentiti nell’elemento XML o nei nomi di attributi.

Ecco i principali punti di codice Unicode relativi agli spazi bianchi:

  • #x0009 TABULAZIONE DEL PERSONAGGIO
  • #x0020 SPAZIO
  • #x000A LINE FEED (LF)
  • #x000D RETURN (CR)
  • #x00A0 SPAZIO NO-BREAK
  • [#x2002-#x200A] EN SPAZIO attraverso HAIR SPACE
  • #x205F SPAZIO MATEMATICO MEDIO
  • #x3000 x3000 SPAZIO IDEOGRAFICO

Nessuno di questi punti di codice è consentito da W3C XML BNF per i nomi XML :

 NameStartChar ::= ":" | [AZ] | "_" | [az] | [#xC0-#xD6] | [#xD8-#xF6] | [#xF8-#x2FF] | [#x370-#x37D] | [#x37F-#x1FFF] | [#x200C-#x200D] | [#x2070-#x218F] | [#x2C00-#x2FEF] | [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] | [#x10000-#xEFFFF] NameChar ::= NameStartChar | "-" | "." | [0-9] | #xB7 | [#x0300-#x036F] | [#x203F-#x2040] Name ::= NameStartChar (NameChar)* 

Spazio bianco nel contenuto XML (nomi di componenti diversi)

Riepilogo: i caratteri spazi bianchi sono , ovviamente, consentiti nel contenuto XML.

Tutti i codepoint di uno spazio sopraelencati sono consentiti nel contenuto XML dal W3C XML BNF per Char :

 Char ::= #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF] /* any Unicode character, excluding the surrogate blocks, FFFE, and FFFF. */ 

I punti di codice Unicode possono essere inseriti come riferimenti di carattere . Sia decimale che &# decimale ; ed esadecimale &#x esadecimale ; i moduli sono supportati.

  • Nome decimale decimale esadecimale
  • o TABULAZIONE DEL PERSONAGGIO
  • o LINE FEED (LF)
  • o RITORNO DEL TRASPORTO (CR)
  • o SPAZIO
  •   o   SPAZIO NO-BREAK

Se stai parlando del problema in cui i caratteri di spazi bianchi multipli e non spaziali vengono rimossi in modo specifico dai valori degli attributi , allora sì, codificandoli come riferimenti di caratteri come & # 9; lo aggiusterò

Ho avuto lo stesso problema e nessuna delle risposte precedenti ha risolto il problema, quindi ho provato qualcosa di molto semplice: ho appena inserito le mie strings.xml \n\t

La stringa completa assomiglia a questo - Automatische Aktualisierung der\n\tDatenbank

Risultati in:

  • Automatische Aktualisierung der

    Datenbank

(senza linea in mezzo)

Forse aiuterà gli altri. Saluti

Per far sì che funzioni, ho bisogno di codificare il valore esadecimale dello spazio all’interno dell’elemento xml di CDATA, in modo che l’analisi del post si sommi proprio come nel web htm htm e se visualizzato nel browser mostra solo uno spazio !. (tutte le idee e le risposte sopra sono utili)