2012-08-04 104 views
2

我有一個問題,這似乎是相當普遍的,但我真的找不到解決它的工作方法。 我有一個大的XML文件,並將解析它。文檔結構如下:XML數據以列表在斯卡拉

<response> 
<result> 
    <doc> 
     <float name="xxx">0.0</float> 
     <int name="yyy">123</int> 
     <str name="zzz">hello</str> 
     <str name="xyz">world</str> 
    </doc> 
</result></response> 

和我想此信息解析成一個散列圖像「地圖[字符串,INT](YYY,123)」(一個地圖FO空想數據類型)。

我發現的所有例子,直到現在解釋如何我可以得到像「zzzhelloxyzworld」結果,如果我尋找「str」標籤或如何我可以找出「str」標籤內的「名稱」屬性但我知道名稱屬性,並希望在「str」標籤中包含信息。

(xmldoc \\ "str").map(n => (n \ "@name").text) 

例如給我一個所有屬性值的映射。但我不知道獲取數據的方法。

我希望有人能幫助我,因爲在我看來,這是一個常見的任務,我不知道爲什麼我找不到任何解決方案。

回答

1
(xmldoc \\ "str").map(n => (n \ "@name").text -> n.text).toMap 

scala.collection.immutable.Map[String,String] = Map(zzz -> hello, xyz -> world) 
+0

感謝,我知道這隻能是一個班輪;) – 2012-08-04 17:40:26

+0

很高興幫助:) – viktortnk 2012-08-04 17:41:06