作者kons (kons)
看板GameDesign
标题[请益] 关於把阵列转json的问题
时间Tue Dec 1 03:42:22 2020
在网路看了一些教学,自己试着做做看,但转出来的json都只有{},内容都空的。
https://i.imgur.com/h9fmUM6.jpg
https://i.imgur.com/ZC7oDkn.jpg
我用Debug.Log看,都有存到阵列中,
问题应该是出在转字串的时候。
如果我把
data = JsonUtility.ToJson(saveBag)
改成
data = JsonUtility.ToJson(saveBag.bagItem[1])
在Debug的地方可以看到显示字串。
但就是没办法存两笔以上的资料。
教学反覆看了几次还是找不到答案,
请问是我哪里理解错误?谢谢。
--
至今我仍然深深相信,我是个
帅哥,不过是
量子力学定义中的
帅哥。
当没人观测我的时候,我肯定是全地球最帅的男人。
Line:kons0815
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 180.177.32.178 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/GameDesign/M.1606765345.A.6CA.html
1F:→ petitbleu: 试试 JsonUtility.ToJson(saveBag.bagItem) 12/01 11:16
2F:推 wix3000: 你的两个物件都要加上 [Serilizable] 的属性 12/01 12:24
3F:→ wix3000: 类别 12/01 12:25
再查了一些资料,似乎是原版unity提供的转Json无法识别自订义的类别,
我把类别都拿掉,只单纯存字串进去就可以了。
※ 编辑: kons (180.177.32.178 台湾), 12/01/2020 20:43:44
4F:推 kingroy: 同二楼 12/01 20:42
5F:推 kingroy: 加在playitem的class前就ok 12/01 20:45
6F:→ kingroy: 原本的忘了是不是Dictionary包list之类的会有问题 其他简 12/01 20:46
7F:→ kingroy: 单的自定义class应该没问题 12/01 20:46
8F:推 wix3000: 没这回事,你加上我说的属性就对了,记得 using System 12/01 21:31
https://i.imgur.com/YNYmoeJ.png
请问像这样吗?好像还是没办法存成Json,感谢提供建议,我再试试看。
※ 编辑: kons (180.177.32.178 台湾), 12/01/2020 21:56:53
9F:推 ctrlbreak: class要继承 MonoBehaviour 或 ScriptableObject 12/02 00:32
10F:推 cjcat2266: 把资料打包成纯资料struct吧,MonoBehaviour和Sprite 12/02 00:36
11F:→ cjcat2266: 应该有不少跟Serializable attribute不合的非纯资料子 12/02 00:36
12F:→ cjcat2266: 物件 12/02 00:36
感谢各位大大的提点,今天看了另一个教学,
虽然有些地方还不太懂,但可以成功储存了,再次感谢大家。
https://i.imgur.com/fj5WsFd.jpg
https://i.imgur.com/klX7sk0.jpg
※ 编辑: kons (180.177.32.178 台湾), 12/02/2020 04:06:48
13F:推 dreamnook: 12/03 20:46
14F:推 kingroy: 阿 拿掉monobehaviour才对 单纯的class拿来转就ok 12/06 11:09
15F:推 jackyT: 不能转List要一般阵列 12/06 11:15
16F:推 NDark: 我记得某一版之後List是可正常转的.其他容器就不行. 12/06 11:22
17F:推 kingroy: Dictionary比较烦,还有List Dictionary互包那种 12/08 10:16
18F:→ linaomasa: 用newton啊 好用 12/09 17:16
19F:推 kingroy: Newton两年前某版会有问题,iOS审查卡那边 12/09 18:33
20F:推 NDark: newton 会卡 .net framework 版本. 当时要选用适当的版本. 12/09 19:31
21F:→ NDark: 可以选用其他也支援这些容器的 json library 12/09 19:31
22F:推 kingroy: 或是自己写个helperclass 基本上Stackoverflow有一堆可参 12/10 11:49
23F:→ kingroy: 考 12/10 11:49
25F:→ gsyung: nsoft.Json-AOT 这个版本可处理ios过不了的问题 12/13 15:26