属性見つけることができません。ScalaのXMLは、私は、次のXMLからXML属性を解析しようとしています
<?xml version="1.0"?>
<data>
<country name="Liechtenstein">
<rank>1</rank>
<year>2008</year>
<gdppc>141100</gdppc>
<neighbor name="Austria" direction="E"/>
<neighbor name="Switzerland" direction="W"/>
</country>
<country name="Singapore">
<rank>4</rank>
<year>2011</year>
<gdppc>59900</gdppc>
<neighbor name="Malaysia" direction="N"/>
</country>
<country name="Panama">
<rank>68</rank>
<year>2011</year>
<gdppc>13600</gdppc>
<neighbor name="Costa Rica" direction="W"/>
<neighbor name="Colombia" direction="E"/>
</country>
</data>
具体的には、私は国のタグからname属性を取得したいです。私はこのコードを使用しています:
import scala.xml.XML
object XmlReader {
def main(args: Array[String]) {
val xml = XML.loadFile("src/main/resources/country_data.xml")
println(xml \\ "data" \\ "country" \ "@name")
}
}
私は何をしようと、私は空の値を取得します。私はそれを実行するときにXMLが表示されるのを見ることができるので、 "xml \ 'data' \ 'country'"は良いです。しかし、私は国のタグの属性を取得しようとすると、私は何も得られません。私はこのチュートリアルが示していることを正確にやっているようですが(http://alvinalexander.com/scala/scala-xml-searching-xmlns-namespaces-xpath-parsing)、結果は得られません。
アップデート:私は1つの国だけのノードは、以下の作品がある場合:
(xml \\ "data" \ "country" \ "@name").text
を私がなぜ分かりません。
これはチュートリアルと同じことではなく、変数を設定しています。それはあなたのために働くのですか? – choroba
いいえ、結果をvalに保存してそれを印刷しましたが、まだ何も得られません。 – redeagle47