序列化与反序列化的简便实用封装 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

       从上一篇文章到现在大概有半个月的时间了,一直没有在博客上发文章了,实在是不应该。这些天我又开始做J2ME的手机游戏开发了,唉,真是无奈,要知道我应聘的职位可是.NET研发工程师呀,成天做一天与职位不相干的事情,感觉自己就像是项全能选手似的,其实到最后什么都不精通,感觉真是悲哀呀!
       算了,总之这不是今天的话,还是来说说今天的话题吧。我上周看到了一篇有关序列化的文章,觉得很不错。其实我自己也有一些有关序列化经验,我这次那出来说说,希望对大家有所帮助,对象是封装好的,有兴趣的朋友就直接拿来用吧!嘻嘻!这个程序是针对.net的,有时间的话我会在做一个java版本的。
       现在我们来看下使用源代码:
       调用代码:

            string ustr = "";

            //填充示例内容

            User u = new User ();

            u.id = 0;

            u.name = "zjy";

            //使用SequenceBoardroom获取xml字符串

            object o = SequenceBoardroom.GetXmlBySerialize(u);

            try

            {

                ustr = (string)o;

            }

            catch

            {

                Exception error = (Exception)o;

            }

            //如果字符串不符合标准的话返回的就是Exception类型,正确的话就返回xml字符串

            //使用SequenceBoardroom获取User对象

            object ob = SequenceBoardroom.GetObjectByXxlString(ustr, new User());

            try

            {

                User ub = (User)ob;

            }

            catch

            {

                Exception error = (Exception)ob;

            }

            //如果字符串不符合标准的话返回的就是Exception类型,正确的话就返回User实例

    User对象代码:

    public class User

    {

        private int _id;

        public int id

        {

            set { _id = value; }

            get { return _id; }

        }

        private string _name;

        public string name

        {

            set { _name = value; }

            get { return _name; }

        }

}

上面的代码十分简单,我想也不用有什么过多的解释,大家只要将ZjyLibrary.dll引入到项目当中去,进行上面相应的一些使用就可以,只要注意,返回值是两种类型,要做好判断工作。当然返回的值更多的价值是显示到日志里去用来寻找测试时的错误。