[Tips]XmlElementを取得する

XMLの要素を取得する関数、GetElementNameを作ってみました。(元ネタはこちら

function Get-Elementname([Xml.XmlElement]$element)
{
    for ( $i = 0; $i -lt $element.get_ChildNodes().Count; $i++ )
    {
        $element.get_ChildNodes().Item($i).Name
    }
}

たとえば、下記のようにしてCNNのRSSを読み込み

PS>$xml = (New-Object System.Net.WebClient).DownloadString('http://rss.cnn.com/rss/cnn_topstories.rssl')

$xml.rss.channelの下の要素にどのようなものがあるかを調べるには、下記のようにします。

PS> Get-Elementname $xml.rss.channel

 

この関数は、get_ChildNodes().Item(要素番号).Name で要素名を取得出来ることを利用しています。

コメント

タイトルとURLをコピーしました