C# 入門 & 実践 / C sharp
601-1. XML Xml文字列を解析する。
簡単なXml形式の文字列を読み込んで解析してみます。
一般的にはこれでOKでしょう。
static void Main()
{
// xml 文字列
string xml = "Jack42";
XmlTextReader reader = new XmlTextReader( new StringReader(xml));
while (reader.Read())
{
switch (reader.NodeType)
{
case XmlNodeType.Element:
Console.WriteLine("Element : " + reader.Name);
if (reader.MoveToFirstAttribute())
{
// 属性を発見
Console.WriteLine("{0}={1}", reader.Name, reader.Value);
}
break;
case XmlNodeType.Text:
Console.WriteLine(" + Value : " + reader.Value);
break;
default :
break;
}
}
}
結果はこんな感じで。
Element : response
Element : name
type=eng
+ Value : Jack
Element : age
+ Value : 42
データの少ないXmlであればこんな感じで手動で解析しても問題ないでしょう。
要素と値を別々にとっても意味無いので、少し変更。
static void Main()
{
// xml 文字列
string xml = "Jack42";
XmlTextReader reader = new XmlTextReader( new StringReader(xml));
reader.Read();
while (!reader.EOF)
{
if (reader.IsStartElement("name"))
{
Console.WriteLine("Name type = " + reader.GetAttribute("type") );
Console.WriteLine("Name - " + reader.ReadElementString("name") );
}
else if (reader.IsStartElement("age"))
{
Console.WriteLine("Age - " + reader.ReadElementString("age") );
}
else
{
reader.Read();
}
}
}
Webサービスとの連携で値を表示するのに使うのですが
サーバ側はPHPなどで簡単にDBから抜き出すので良いと思います。
せっかくなのでAmazon・楽天・ビッダーズのWebサービスを利用してみましょう!
XML
C# 入門 & 実践 / C sharp