Xml.Serialization 을 이용해서 DateTime 멤버를 포함하고 있는 객체의 Serialization을 시도해보았다.
결과는 만족스러웠다.
아무런 문제 없이 Serialization이 잘 이루어졌다.
아래는 예제 코드이다.
아래에서 Chrono 클래스는 string field 와 DateTime field를 가지고 있다.
using System;
using System.Collections.Generic;
using System.Xml;
using System.Xml.Serialization;
namespace SerializationTest
{
class Program
{
static void Main(string[] args)
{
Chrono c1 = new Chrono();
Chrono c2 = new Chrono();
c1.Name = "Quick";
c1.Now = DateTime.Now;
c2.Name = "Fast";
c2.Now = DateTime.Now;
List<Chrono> myList = new List<Chrono>();
myList.Add(c1);
myList.Add(c2);
XmlSerializer myXmlSerializer = new XmlSerializer(typeof(List<Chrono>));
using (XmlWriter writer = XmlWriter.Create("serialization.xml"))
{
myXmlSerializer.Serialize(writer, myList);
}
List<Chrono> yourList;
using (XmlReader reader = XmlReader.Create("serialization.xml"))
{
object o = myXmlSerializer.Deserialize(reader);
yourList = o as List<Chrono>;
}
foreach (Chrono item in yourList)
{
Console.WriteLine(item.Name + " : " + item.Now.ToString());
}
}
}
public class Chrono
{
public string Name;
public DateTime Now;
}
}
아래는 실행 결과 화면이다.
결과는 만족스러웠다.
아무런 문제 없이 Serialization이 잘 이루어졌다.
아래는 예제 코드이다.
아래에서 Chrono 클래스는 string field 와 DateTime field를 가지고 있다.
using System;
using System.Collections.Generic;
using System.Xml;
using System.Xml.Serialization;
namespace SerializationTest
{
class Program
{
static void Main(string[] args)
{
Chrono c1 = new Chrono();
Chrono c2 = new Chrono();
c1.Name = "Quick";
c1.Now = DateTime.Now;
c2.Name = "Fast";
c2.Now = DateTime.Now;
List<Chrono> myList = new List<Chrono>();
myList.Add(c1);
myList.Add(c2);
XmlSerializer myXmlSerializer = new XmlSerializer(typeof(List<Chrono>));
using (XmlWriter writer = XmlWriter.Create("serialization.xml"))
{
myXmlSerializer.Serialize(writer, myList);
}
List<Chrono> yourList;
using (XmlReader reader = XmlReader.Create("serialization.xml"))
{
object o = myXmlSerializer.Deserialize(reader);
yourList = o as List<Chrono>;
}
foreach (Chrono item in yourList)
{
Console.WriteLine(item.Name + " : " + item.Now.ToString());
}
}
}
public class Chrono
{
public string Name;
public DateTime Now;
}
}
아래는 실행 결과 화면이다.
'Code > C#' 카테고리의 다른 글
| Generic Dictionary Xml Serialization C# Example 2 (0) | 2007.12.16 |
|---|---|
| Generic Dictionary Xml Serialization C# Example 1 (0) | 2007.12.16 |
| List<string> 객체의 XML Serialization 사용 예제 (0) | 2007.12.15 |
| XML Serialization 사용법과 예제 (0) | 2007.12.15 |
| Path 클래스를 사용해서 원하는 파일의 위치를 지정하는 방법 (0) | 2007.12.15 |