From 1c2c07bf0f53c8c29b90222a86295a910d7584db Mon Sep 17 00:00:00 2001 From: zhangaotian <8474238@qq.com> Date: Fri, 8 Dec 2023 16:58:03 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0trycatch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Scripts/Framework/Storage/DataIOBase.cs | 22 +++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/ProjectNLD/Assets/Code/Scripts/Framework/Storage/DataIOBase.cs b/ProjectNLD/Assets/Code/Scripts/Framework/Storage/DataIOBase.cs index b99b8402a99..6a761b2d676 100644 --- a/ProjectNLD/Assets/Code/Scripts/Framework/Storage/DataIOBase.cs +++ b/ProjectNLD/Assets/Code/Scripts/Framework/Storage/DataIOBase.cs @@ -1,3 +1,4 @@ +using System; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System.Collections; @@ -41,16 +42,29 @@ public class PlayerPrefsDataIO : DataIOBase } return jsonData; } - + public override void LoadToDic(string key, string jsonData, ref Dictionary storageMap) { - JObject jObj = JObject.Parse(jsonData); - if (storageMap.TryGetValue(key, out object storageData)) + try { - JsonConvert.PopulateObject(jObj.ToString(), storageMap[key], JsonSerializerData()); + JObject jObj = JObject.Parse(jsonData); + + if (storageMap.TryGetValue(key, out object storageData)) + { + JsonConvert.PopulateObject(jObj.ToString(), storageMap[key], JsonSerializerData()); + } + } + catch (JsonReaderException ex) + { + Debug.LogError($"JSON 解析异常: {ex.Message}"); + } + catch (Exception ex) + { + Debug.LogError($"发生异常: {ex.Message}"); } } + public override void Save() { PlayerPrefs.Save();