3

かなり一般的な問題が発生しましたが、それを解決するための実用的なアプローチが実際には見つかりません。私は大きな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>

そして、この情報を「Map [String、Int](yyy、123)」(One Map fo revery Datatype)のようなハッシュマップに解析したいと思います。

これまでに見つけたすべての例は、「str」タグを検索した場合に「zzzhelloxyzworld」のような結果を取得する方法、または「str」タグ内の「name」属性を見つける方法を説明していますが、 name属性であり、「str」タグに情報を入れたい。

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

たとえば、すべての属性値のマップが表示されます。しかし、私はデータに到達する方法を知りません。

誰かがここで私を助けてくれることを願っています。なぜなら、それは私にはそのような一般的なタスクのように思われ、なぜ私がこれに対する解決策を見つけることができなかったのかわかりません。

4

1 に答える 1

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

与える

scala.collection.immutable.Map[String,String] = Map(zzz -> hello, xyz -> world)
于 2012-08-04T17:35:04.043 に答える