0

RSS フィードから iCal ノードにアクセスするためのコード行を教えてもらえますか?

具体的には、xCal:x-calconnect-venue-name ノードにアクセスしたいと考えています。

私の親ノードは「アイテム」なので、パスは次のとおりです。

item/xCal:x-calconnect-venue/xCal:adr/xCal:x-calconnect-会場名

parent.SelectChildNode() を使用してそのノードの値にアクセスするにはどうすればよいですか?

どうもありがとう

b

4

1 に答える 1

0

RSS アイテムの内容がこのようなものである場合 (無関係なノードは省略されています)

<item>
  <xCal:adr>
    <xCal:x-calconnect-venue-name>venue name</xCal:x-calconnect-venue-name>
  </xCal:adr>
</item>

それからあなたはすることができます

XmlNamespaceManager nsmgr = new XmlNamespaceManager(doc.xmlDoc);
nsmgr.AddNamespace("xCal", "urn:ietf:params:xml:ns:xcal");
// possibly add the RSS namespace as well?

XmlNodeList nodes = xmlDoc.SelectNodes("rss/channel/item"); 
foreach (XmlNode node in nodes) { 
  XmlNode venue = node.SelectSingleNode(".//xCal:x-calconnect-venue-name", nsmgr);
  // watch out, there might not be a select result!
  if (venue != null) {
    string s = venue.InnerText;
    // ...
  }
}  

または直接

string xpath = "rss/channel/item//xCal:x-calconnect-venue-name";
XmlNodeList nodes = xmlDoc.SelectNodes(xpath, nsmgr); 
foreach (XmlNode venue in nodes) { 
  string s = venue.InnerText;
  // ...
}
于 2010-03-16T17:54:42.837 に答える