7
A
回答
7
這是默認PrettyPrintWriter的結果。我個人喜歡逃避<和>。它使輸出看起來更加平衡。
如果你想要規範化的XML輸出,你應該使用Java提供的C14N API。
如果流式傳輸的內容包含XML,則CDATA是更好的選擇。這裏是我做到了,
XStream xstream = new XStream(
new DomDriver() {
public HierarchicalStreamWriter createWriter(Writer out) {
return new MyWriter(out);}});
String xml = xstream.toXML(myObj);
......
public class MyWriter extends PrettyPrintWriter {
public MyWriter(Writer writer) {
super(writer);
}
protected void writeText(QuickWriter writer, String text) {
if (text.indexOf('<') < 0) {
writer.write(text);
}
else {
writer.write("<[CDATA["); writer.write(text); writer.write("]]>");
}
}
}
0
XStream不自己寫XML,它使用各種庫(「驅動程序」?)來這樣做。
只要選擇一個沒有。該列表在他們的網站上。我想它會默認使用XOM。
1
C數據不爲我工作, 最後我有阿帕奇StringUtils的工作。
StringUtils.replaceEach(xml, new String[]{"<",""","'",">"}, new String[]{"<","\"","'",">"});
相關問題
- 1. 如何在YII框架中禁用不必要的元數據
- 2. XStream:如何隱藏編組XML中的2個不必要的父節點?
- 3. 禁用不必要的過載保護
- 4. XStream中的自定義轉換器
- 5. 在Zend_Form_Element_Multicheckbox中禁用轉義
- 6. 如何在XStream中禁用漂亮打印(空白/換行符)?
- 7. 不必要的跳轉.show()
- 8. 避免gcloud中不必要的轉義編輯
- 9. 如何使用XMLOutputter禁用轉義
- 10. 在Django的TextField中禁用HTML轉義
- 11. XStream不轉換xml標籤
- 12. 如何禁用utf-8在rails中的轉義to_json輸出\ u2013
- 13. 在heredoc PHP禁用轉義
- 14. 如何禁用HTML URL轉義
- 15. 如何禁用後輸出轉義
- 16. TinyMCE禁用轉義
- 17. 如何在MVC4中使用@foreach阻止不必要的再現
- 18. 如何使用RegEx(在Notepad ++中)刪除不必要的信息?
- 19. 如何使用XStream的
- 20. 在Appengine中禁用jinja2自動轉義
- 21. 在dojo中禁用轉義鍵
- 22. 如何在log4j2中禁用ANSI轉義(顏色記錄)
- 23. 如何在IntelliJ中複製和粘貼時禁用轉義?
- 24. 如何在Java-XML中禁用/避免&符號轉義?
- 25. 如何在STS中禁用RSS提要?
- 26. 如何在我的自定義LinkedList實現中避免不必要的遞歸?
- 27. 當禁用輸出轉義不被支持時XSLT禁用輸出轉義
- 28. XStream如何選擇其轉換器?
- 29. 的FxCop禁止警告CA1800(不必要的糞中)
- 30. 不必要的轉換到bigint
CDATA節並不是一個完整的替代方案,因爲序列']]>'不能進入它。 (它有時會被轉換爲兩個CDATA部分。) – bobince 2010-05-24 16:24:34
請注意,此行爲會關閉您的XStream對象的全局轉義。如果您只想在文本包含'<'或其他特定字符時禁用轉義,則可以用'super.write(writer,text);'替換'writer.write(text);',從而恢復默認的轉義行爲對於所有其他情況。 – 2015-03-19 13:52:51