C# - よく使うクラス - System.Xml - XmlReader
- 1. 概要
- 2. Create
1. 概要
「Writer」あれば、「Reader」ありなのですが。
前ページの「XmlTextWriter」に対するものとは、ちょっと違う話になります。
参考サイトによれば、「XML データへの高速で非キャッシュの前方向アクセスを提供するリーダーを表します」とのことです。
本ページは、下記にサイトを参考にさせていただきました。
「XmlReader クラス (System.Xml)」
2. Create
参考サイトによれば、「新しい XmlReader のインスタンスを作成します」とのことです。
実は、細かい部分は(「using」や、例外等)省略しますが。
public void ToXmlFile(string name, Type objtype, object obj)
{
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
settings.Encoding = new System.Text.UTF8Encoding(false);
using (XmlWriter xw = XmlWriter.Create(path, settings))
{
DataContractSerializer serializer = new DataContractSerializer(objtype);
serializer.WriteObject(xw, obj);
}
}
とまぁ、「DataContractSerializer」を使って出力したファイルを読むときに使うのですが、以下の感じで。
public object read(string name, Type objtype)
{
using (System.IO.StreamReader reader = new System.IO.StreamReader(name))
{
using (XmlReader xr = XmlReader.Create(reader))
{
DataContractSerializer serializer = new DataContractSerializer(objtype);
return serializer.ReadObject(xr);
}
}
}
でまぁ、読めました。
なんか、書き込みと違うでしょ、今んとこ、こうしなきゃ読めなかったので。
まだ、解説はできない。
|
|