Code/C#
DateTime 이 포함된 객체의 Serialization
Hide Code
2007. 12. 15. 22:10
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;
}
}
아래는 실행 결과 화면이다.