- - PR -
XMLファイルから属性の値だけを取り出したいのですが
1|2|3
次のページへ»
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-11-25 19:23
脳味噌筋肉です。
以下のようなXMLファイルを対象として <?xml version="1.0" encoding="Shift_JIS"?> <世界の指導者> <指導者ID="1"> <名前>小泉J一郎</名前> <備考>日本</備考> </指導者ID> <指導者ID="2"> <名前>Bシュ</名前> <備考>米国</備考> </指導者ID> </世界の指導者> 指導者IDの値だけ取り出したく以下のようなコードを書きました。 Dim Attr As XmlAttributeCollection = Doc.DocumentElement.Attributes Dim IEnumID As IEnumerator = Attr.GetEnumerator() While (IEnumID.MoveNext()) Dim AttrID As XmlAttribute AttrID = CType(IEnumID.Current, XmlNode) MessageBox.Show(AttrID.Value) End While Attr.GetEnumerator()でうまく取得できていないのですが、何がマズいのか よく分かっておりません(^^; 識者の方、ご指摘頂ければ幸いです。 | ||||||||||||
|
投稿日時: 2004-11-25 19:49
その前にこれって整形式のXMLになってます?
<指導者 ID="1"> </指導者> ていうことでしょうか? [ メッセージ編集済み 編集者: karajan 編集日時 2004-11-25 19:51 ] | ||||||||||||
|
投稿日時: 2004-11-25 21:14
諸農です。
Enumeratorにこだわりがないのでしたら、 XmlDocument.SelectNodes()でもいいかもしれませんね。 SDKにサンプルがあるので参考にしてください。 _________________ 諸農和岳 Powered by Turbo Delphi & Microsoft Visual Studio 2005 十兵衛@わんくま同盟 http://blogs.wankuma.com/jubei/ | ||||||||||||
|
投稿日時: 2004-11-26 13:49
karajanさん、jubeiさん
レスありがとうございます。 早速試してみます。 | ||||||||||||
|
投稿日時: 2004-11-29 10:46
脳味噌筋肉です。
SelectNodesのサンプルをたよりに以下のコードを書いてみました。 結果は思うようにいかず(指導者ID取得できず) Dim Doc As New XmlDocument Doc.Load("dora.xml") Dim Root As XmlElement = Doc.DocumentElement Dim NodeList As XmlNodeList NodeList = Root.SelectNodes("/世界の指導者/@指導者ID") Dim Node As XmlNode For Each Node In NodeList MessageBox.Show(Node.Value.ToString) Next 識者の方、私の書いたコードのどこがマズいのかご指摘頂きたくお願いします。 SelectNodesに渡す文字列がこれで正しいのか自信ないんですが。。。 | ||||||||||||
|
投稿日時: 2004-11-29 10:50
失礼しました。
このXMLファイルは
こうなっております。 | ||||||||||||
|
投稿日時: 2004-11-29 10:51
失礼しました。
このXMLファイルは
こうなっております。 | ||||||||||||
|
投稿日時: 2004-11-29 11:08
こんにちは。
<指導者ID="1"> ではなくて <指導者 ID="1"> ということですよね。 でしたら Dim Doc As New XmlDocument Dim As idNode As XmlNodeList Doc.Load("dora.xml") idNode = Doc.SelectNodes("世界の指導者/指導者/@ID") で取得できます。 |
1|2|3
次のページへ»