2008-11-05 86 views
0

我試圖反序列化XML結構,看起來像這樣:反序列化的傳統XML結構的XStream

<somecontainer> 
    <key1>Value1</key1> 
    <key1>Value2</key1> 
    <key2>Value3</key2> 
    <key2>Value4</key2> 
</somecontainer> 

我基本上可以選擇什麼樣的,如果元素反序列化,可能像對的列表或者其他的東西。這裏的本質是元素名稱是關鍵。

不,我不能改變xml結構。任何人都知道如何用xstream來做到這一點?

回答

1

我發現這種情況下需要自定義序列化程序,沒有辦法繞過它。

同樣

<node attr1="xxx">value1</node> 

也需要自定義序列。

1

我有一段時間沒有使用XStream,但implicit collections可能做你想做的。

+0

他最終會得到一個關鍵對象列表,但這似乎是對我的邏輯轉換。 – Caoilte 2010-05-20 20:56:28

1

您也可以考慮在反序列化文檔之前將文檔轉換爲規範化形式。這將避免需要自定義序列化器。

我估計是否易於維護自定義序列化器或XSL轉換步驟?

+0

那麼我不得不做一個2路轉換,我想這使得自定義串行器也一樣。不過,我會保存在我的工具箱中;) – krosenvold 2008-11-16 18:52:03