この構造のxmlファイルがあります。ノード「設定」は 1 回だけ繰り返されます。ノード「リマインダー」は+1回表示できます。
<?xml version="1.0" encoding="utf-8"?>
<!--Name App-->
<AllSettings>
<Settings>
<tax1>21</tax1>
<tax2>0</tax2>
</Settings>
<Reminders>
<Name>s8</Name>
<Title>xxxxx</Title>
<Content>xxxxxxxxx</Content>
<BeginTime>09/11/2012 10:00:00</BeginTime>
</Reminders>
<Reminders>
<Name>s2</Name>
<Title>zzzzzzzzz</Title>
<Content>zzzzzzzzzzz</Content>
<BeginTime>07/11/2012 13:00:00</BeginTime>
</Reminders>
</AllSettings>
一番下のコードを使用して、「設定」ノードでデータを読み取ることができます。しかし、各ノードの「リマインダー」からデータを読み取るにはどうすればよいですか?
IsolatedStorageFileStream isoFileStream = myIsolatedStorage.OpenFile(myXmlFile, FileMode.Open);
isoFileStream.Position = 0;
XmlReader xmlReader;
xmlReader = XmlReader.Create(isoFileStream);
xmlReader.MoveToContent();
while (xmlReader.Read())
{
if (xmlReader.NodeType == XmlNodeType.Element && xmlReader.LocalName == "Settings"
{
while (xmlReader.NodeType != XmlNodeType.EndElement)
{
xmlReader.Read();
if (xmlReader.Name == "tax1")
{
_tax1 = xmlReader.ReadElementContentAsString();
}
else if (xmlReader.Name == "tax2")
{
_tax2 = xmlReader.ReadElementContentAsString();
}
} // end while
}
else if (xmlReader.NodeType == XmlNodeType.Element && xmlReader.LocalName == "Reminders")
{
// ????
}
} // end while