Unity 数据 序列化和反序列化 通用方法

原创 2017年07月04日 16:17:45

将下面的脚本挂到任意物体

using UnityEngine;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Xml.Serialization;
 
public class SerializeTest : MonoBehaviour
{
    void Start()
    {
        List<Information> serList = new List<Information>();
        string path = @"Test.xml";
 
        //赋值
        for (int i = 0; i < 5; i++)
        {
            serList.Add(new Information("名字" + i, 20 + i));
        }
 
        XMLSerialize(serList, path);
        List<Information> serTest = XMLDeserialize<List<Information>>(path);
 
        //输出返回的值
        foreach (var temp in serTest)
        {
            Debug.Log(temp.name);
            Debug.Log(temp.age);
        }
    }
 
    //序列化
    void XMLSerialize<T>(T obj, string path)
    {
        XmlSerializer xs = new XmlSerializer(typeof (T));
        Stream fs = new FileStream(path, FileMode.Create, FileAccess.ReadWrite);
        xs.Serialize(fs, obj);
        fs.Flush();
        fs.Close();
        fs.Dispose();
    }
 
    //反序列化
    T XMLDeserialize<T>(string path)
    {
        XmlSerializer xs = new XmlSerializer(typeof (T));
        Stream fs = new FileStream(path, FileMode.Open, FileAccess.ReadWrite);
        T serTest = (T)xs.Deserialize(fs);
        fs.Flush();
        fs.Close();
        fs.Dispose();
        return serTest;
    }
}
 
[XmlType("人员信息")]
public class Information
{
    [XmlAttribute("名字")]
    public string name;
 
    [XmlAttribute("年龄")]
    public int age;
    public Information(string name, int age)
    {
        this.name = name;
        this.age = age;
    }
 
    //必须要有
    public Information(){ }
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

unity使用Newtonsoft.json反序列化json ,读取你想要的信息

比如这段json {"status":"10000","ret_msg":"\u6210\u529f","data":[{"goods_id":"1",&qu...

Json反序列化实例源码

  • 2012-12-28 13:37
  • 934KB
  • 下载

修复weblogic的JAVA反序列化漏洞的多种方法

0x00 前言 目前oracle还没有在公开途径发布weblogic的JAVA反序列化漏洞的官方补丁,目前看到的修复方法无非两条: 使用SerialKiller替换进行序列化操作的Obje...

反序列化作用

  • 2013-07-04 07:12
  • 104KB
  • 下载

Java 反序列化检测工具

  • 2016-04-18 09:49
  • 36.35MB
  • 下载

Jackson反序列化的实现方法

jackson反序列化主要有两种情况,一种是单对象反序列化,另一种是多对象、复杂对象(集合等)反序列化,具体如下: 一、单对象序列化 LatConfig latConfigObject = Jacks...

JBOSS反序列化

  • 2016-03-28 21:13
  • 5.31MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)