unity 同一张表中存入多种类型的数据时的解析方法

来源:互联网 发布:比特大陆 知乎 编辑:程序博客网 时间:2024/05/17 04:16
    public void LoadJson()    {        StreamReader sr = new StreamReader(dataPath);        //不能直接转换为 BaseItem,会造成数据丢失        JsonData  data = JsonMapper.ToObject(sr.ReadToEnd());        for (int i = 0; i < data.Count;i++ )        {            //取出数据类型,判断            int type = (int)data[i]["itemType"];            //再将每一条数据转换为Json            string str = data[i].ToJson();            if (type ==(int)ItemType.Equip)            {  //再将json转换为Object                ItemEquipment item = JsonMapper.ToObject<ItemEquipment>(str);                datas.Add(item.itemID, item);            }            else if (type == (int)ItemType.Drug)            {                ItemDrug item = JsonMapper.ToObject<ItemDrug>(str);                datas.Add(item.itemID, item);            }            else if(type==(int)ItemType.Other)            {                BaseItem item = JsonMapper.ToObject<BaseItem>(str);                datas.Add(item.itemID, item);            }                  }                     }

0 0
原创粉丝点击