看板 GameDesign 關於我們 聯絡資訊
在網路看了一些教學,自己試著做做看,但轉出來的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://www.ptt.cc/bbs/GameDesign/M.1606765345.A.6CA.html
petitbleu: 試試 JsonUtility.ToJson(saveBag.bagItem) 12/01 11:16
wix3000: 你的兩個物件都要加上 [Serilizable] 的屬性 12/01 12:24
wix3000: 類別 12/01 12:25
再查了一些資料,似乎是原版unity提供的轉Json無法識別自訂義的類別, 我把類別都拿掉,只單純存字串進去就可以了。 ※ 編輯: kons (180.177.32.178 臺灣), 12/01/2020 20:43:44
kingroy: 同二樓 12/01 20:42
kingroy: 加在playitem的class前就ok 12/01 20:45
kingroy: 原本的忘了是不是Dictionary包list之類的會有問題 其他簡 12/01 20:46
kingroy: 單的自定義class應該沒問題 12/01 20:46
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
ctrlbreak: class要繼承 MonoBehaviour 或 ScriptableObject 12/02 00:32
cjcat2266: 把資料打包成純資料struct吧,MonoBehaviour和Sprite 12/02 00:36
cjcat2266: 應該有不少跟Serializable attribute不合的非純資料子 12/02 00:36
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
dreamnook: 12/03 20:46
kingroy: 阿 拿掉monobehaviour才對 單純的class拿來轉就ok 12/06 11:09
jackyT: 不能轉List要一般陣列 12/06 11:15
NDark: 我記得某一版之後List是可正常轉的.其他容器就不行. 12/06 11:22
kingroy: Dictionary比較煩,還有List Dictionary互包那種 12/08 10:16
linaomasa: 用newton啊 好用 12/09 17:16
kingroy: Newton兩年前某版會有問題,iOS審查卡那邊 12/09 18:33
NDark: newton 會卡 .net framework 版本. 當時要選用適當的版本. 12/09 19:31
NDark: 可以選用其他也支援這些容器的 json library 12/09 19:31
kingroy: 或是自己寫個helperclass 基本上Stackoverflow有一堆可參 12/10 11:49
kingroy: 考 12/10 11:49
gsyung: newtonsoft.json 用 https://github.com/Votrubec/Newto 12/13 15:26
gsyung: nsoft.Json-AOT 這個版本可處理ios過不了的問題 12/13 15:26