您好,登錄后才能下訂單哦!
我們在使用Unity讀取文件或者消息傳遞的時候,經常說到序列化。什么是序列化?序列化的意思就是我們的數據是按照一定的順序進行賦值的,這個順序是一定的。它主要是為了方便變量賦值。在Unity中我們也經常使用這種方法。例如我們可以這樣寫:
在我們需要序列化的前面加上[System.Serializable]用于告訴C#以下結構是我們需要序列化的。下面我們就說一下如何使用XML進行序列化。
我們不能直接寫XML文件,我們一般是通過Excel表格將其轉化成XML格式,我們需要轉化成啥格式才能比較好的序列化?我們是這樣操作的:
其一、定義一個Dictionary 我們將根據結構體的名字將其整個結構體放到里面。
其二、每個結構體它都有自己對應的ID,每個ID唯一標識一個結構體數據,我們就是按照ID進行讀取數據。
我們可以利用Swicth case語句讀取存放數據,代碼如下:
大家看上面的語句,有一個DeserializeObject這個就是C#使用的反序列化函數,我們就是通過它將我們的XML里面的字段保存起來。以下是調用的函數:
那么我們只需要調用我們已經保存到Dictionary里面的值就可以了。
比如:
另外附上xml文件格式:
是不是很方便?
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。