2010-11-30 37 views
1

我尋找Java Swing組件,它會自動格式化我凌亂的XML(在同一行,見示例):是否有Swing組件會自動格式化XML?

<person><name>Joe</name><surname>Black</surname></person> 

等等,等等

它不是很高興看到像十億線長線:)我希望有一些組件,這將爲我做骯髒的工作。 Thankx

編輯: 我得到XML輸入從數據庫純字符串,所以對我來說沒有真正的XML文檔:(

回答

5

你並不需要依靠一個Swing組件來完成格式化。您可以嘗試漂亮地打印您的XML,並直接在您的組件中設置格式化的輸出。這已經是asked before

+0

甜蜜:)工作 – Xorty 2010-11-30 23:39:42

0

建議你使用一個基於Java的DOM我們使用XOM(其中情況下使用串行器()),以獲得您在文本字符串所需要的格式,然後重新繪製你的組件

另見例子:。How to pretty print XML from Java?

解析字符串到DOM例如:

Document doc = new Builder().build(new StringReader(yourXML)); 

得到的OutputStream使用

os = new ByteArrayOutputStream(); 

然後使用串行產生文本:

Serializer serializer = new Serializer(os); 
serializer.setTheFormatYouWant(... several options in the class ...); 
serializer.output(doc); 

然後

os.toString(); 
+0

請參閱我的編輯。 – Xorty 2010-11-30 23:20:23