[Unity 笔记] unity中如何将Object序列化成xml字符串并保存


需要使用到以下这几个c#内置的命名空间。

using System.Xml;
using System.IO;
using System.Xml.Serialization;


序列化并存储xml文件

            XmlTextWriter xWrite = new XmlTextWriter(filename,null);
            XmlSerializer sl = new XmlSerializer(type);
            sl.Serialize(xWrite,target);
            xWrite.Close();


读取xml文件并反序列化
            XmlReader xRead = new XmlTextReader(filename);
            XmlSerializer sl = new XmlSerializer(type);
            object obj = sl.Deserialize(xRead);
            xRead.Close();
            return obj;


完整源码如下:

using UnityEngine;
using System.Collections;
using System.Xml;
using System.IO;
using System.Xml.Serialization;

namespace CharacterBase
{
    public class XmlIO
    {
        public static object LoadFromXml(System.Type type,string filename)
        {
            XmlReader xRead = new XmlTextReader(filename);
            XmlSerializer sl = new XmlSerializer(type);
            object obj = sl.Deserialize(xRead);
            xRead.Close();
            return obj;
        }

        public static void SavetoXml(string filename,System.Type type,object target)
        {
            XmlTextWriter xWrite = new XmlTextWriter(filename,target);
            xWrite.Close();
        }
    }
}

相关文章

php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念