- 问题
//为什么用json序列化这样没得问题 Dictionary<string, int> dic = new Dictionary<string, int>(); dic.Add("1", 1); string strJson = LitJson.JsonMapper.ToJson(dic); //这样有问题 Dictionary<int, int> dic2 = new Dictionary<int, int>(); dic2.Add(1, 1); string strJson2 = LitJson.JsonMapper.ToJson(dic2); Debug.Log(strJson2);
- 解决方法
json 序列化时不支持结构体,比如Unity 中的Vector3类型不支持,所以我们要自己转型以下
1 //Vector3 里面原来是float类型,但是 json 不支持float类型,所以用 double类型 2 public class Vector3Obj 3 { 4 double x; 5 double y; 6 double z; 7 }
- 使用json的注意事项
- - JSON字符串里的非数字型键值没有双引号
- - JSON中存在\t这样的制表符,看起来和空格一样,但是就是因为它存在校验不通过,需要去掉
- - 编辑器有bom头也会造成
原文地址:https://www.cnblogs.com/shingkwan/p/8327554.html
时间: 2024-10-10 01:09:58