본문 바로가기
Programming/C# & .NET

[C#] XMl 직렬화, 역직렬화 Method 공유

by Kor-IT 2023. 1. 6.
반응형

 

XML 직렬화, 역직렬화하는 Method를 만들어 공유하고자 해당 글을 작성한다. 기본적으로 직렬화, 역직렬화 개념을 안다는 가정으로 진행하며 해당 함수를 가지고 다양하게 커스텀해서 사용하길 바란다.

 

 

Xml Class


public class Xml
{
    public Xml()
    {
    }

    public T Deserialize<T>(string data)
    {
        XmlSerializer xs = new XmlSerializer(typeof(T));

        using (StringReader sr = new StringReader(data))
        {
            return (T)xs.Deserialize(sr);
        }
    }

    public string Serialize(Object obj)
    {
        XmlSerializer xs = new XmlSerializer(obj.GetType());

        using (TextWriter tw = new StringWriter())
        {
            xs.Serialize(tw, obj);
            return tw.ToString();
        }
    }
}

기본적으로 역직렬화시 다양한 형태를 설정하기 때문에 해당 부분을 제네릭으로 받아 처리되도록 만들었다.

누가 보면 간단하고 쉽게 만들 테지만 나처럼 자주 사용하거나 XML을 다루기 힘들어한다면 해당 함수를 가지고 사용하면 좋을 것 같다.

 

 

 

반응형

댓글