Ziemlich einfache Frage, ich schreibe ein XML-Dokument und ich bin mir nicht sicher, wie man "]]>" ohne es schreiben als das Ende des Abschnitts gesehen werden.Wie schreibe ich das Literal "]]>" in einen CDATA-Abschnitt ohne es endet der Abschnitt
Antwort
Sie können es wie folgt tun:
]]>]]><![CDATA[
Dies beendet den CDATA-Abschnitt in zwei Teile zu brechen, aber es ist das, was Sie zu tun haben.
Sie können nicht. CDATA bietet keine Möglichkeit, Zeichen zu entkommen, so dass diese Zeichen immer das Ende des CDATA-Abschnitts darstellen. Sie können jedoch den CDATA-Abschnitt beenden, "]]>
" hinzufügen und einen neuen mit "" beginnen.
Auf diese Weise hat der String "]]>]]><![CDATA[
" in einem CDATA-Abschnitt fast den Effekt, ein Escape-Zeichen für "`]]> "zu sein.
Ich denke
<![CDATA[]]]]><![CDATA[>]]>
ist der Weg zu gehen.
Das heißt:
- einen Abschnitt CDATA die Zeichenkette
]]
(<![CDATA[]]]]>
) mit - ein CDATA-Abschnitt die wörtliche Zeichenfolge enthält
>
(<![CDATA[>]]>
)
In der Praxis gäbe es wahrscheinlich Text vor dem ersten ]]
und/oder nach dem >
Weitere Informationen unter http://en.wikipedia.org/wiki/CDATA#Uses_of_CDATA_sections
Ich weiß nicht, ob das die richtige Antwort ist oder nicht, aber wenn ja, ist es die schlechteste richtige Antwort aller Zeiten. (Nichts für ungut beabsichtigt ... Ich verweise eher auf die Misere des Systems als auf Ihre Antwort.) – Beska
- 1. Wie schreibe ich einen Überladungsoperator >> Funktion der Zeichenkette?
- 2. Wie schreibe ich eine Ausnahme in Abschnitt 7 der GPLv3?
- 3. Wie schreibe ich ein kurzes Literal in C++?
- 4. Wie schreibe ich einen benutzerdefinierten Konverter für <p:pickList>
- 5. Wie schreibe ich ein vorzeichenloses kurzes int-Literal?
- 6. Wie schreibe ich einen regulären Ausdruck, der einem String-Literal entspricht, wobei das Escape-Zeichen eine Verdoppelung des Anführungszeichen ist?
- 7. Wie schreibe ich einen Bitstrom
- 8. Wie schreibe ich minimal Slack-Skript ohne einen Server?
- 9. Wie mache ich einen Abschnitt in der Recyclingansicht?
- 10. Wie schreibe ich einen Linker
- 11. Wie schreibe ich etwas in JTextArea und zeige es ohne einen Knopf zu drücken
- 12. Wie schreibe ich einen Abschnitt/Teil/Kapitel Titel mit Wörtern aus mehreren Sprachen in LaTeX
- 13. Wie schreibe ich in einen Duplex-Stream?
- 14. Wie schreibe ich es besser?
- 15. Wie schreibe ich einen Integrationstest in NUnit?
- 16. Wie schreibe ich einen Bereich in Rails?
- 17. Wie schreibe ich das Makefile in android.mk?
- 18. Wie schreibe ich einen Methodenzeiger mit der C++ 11 Syntax?
- 19. Wie fülle ich einen Abschnitt innerhalb der C++ - Zeichenfolge?
- 20. Wie schreibe ich einen benutzerdefinierten hübschen Drucker
- 21. Rails 4 - Wie schreibe ich einen Bereich
- 22. Wie schreibe ich einen Kommentar in einen SpEL-Ausdruck?
- 23. Wie schreibe ich einen Abstand active record
- 24. Wie schreibe ich einen einfachen Silverlight Komponententest?
- 25. Wie schreibe ich einen Mono-Daemon
- 26. C# Wie schreibe ich einen Abschnitt einer Zeichenkette, nachdem er aus dem ASCII codiert wurde?
- 27. Wie schreibe ich in Batch-Datei, nachdem ich es ausführen
- 28. Wie schreibe ich einen JavaScript-Tracking-Code?
- 29. Wie schreibe ich einen Scala-Unit-Test, der Compliation fehlschlägt?
- 30. Wie schreibe ich einen einfachen USB-Treiber?
Bessere Antwort IMHO als in das Duplikat :) –
Ein Wort: Huch. –
Paolo: Denken Sie mal so: CDATA ist ein Bereich, in dem Sie * alles * nicht haben müssen (und auch nicht können). Wie würdest du das Ende eines solchen Gebiets markieren? –