XML文件在Unity中的序列化

前端之家收集整理的这篇文章主要介绍了XML文件在Unity中的序列化前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我们在使用Unity读取文件或者消息传递的时候,经常说到序列化。什么是序列化?序列化的意思就是我们的数据是按照一定的顺序进行赋值的,这个顺序是一定的。它主要是为了方便变量赋值。在Unity中我们也经常使用这种方法。例如我们可以这样写:

wKiom1St0Mjz1ONzAAHQLVJkn9g537.jpg

在我们需要序列化的前面加上[System.Serializable]用于告诉C#以下结构是我们需要序列化的。下面我们就说一下如何使用XML进行序列化。

我们不能直接写XML文件,我们一般是通过Excel表格将其转化成XML格式,我们需要转化成啥格式才能比较好的序列化?我们是这样操作的:

wKioL1St0pKwGslGAAJCvgTzQLI105.jpg

其一、定义一个Dictionary 我们将根据结构体的名字将其整个结构体放到里面。

其二、每个结构体它都有自己对应的ID,每个ID唯一标识一个结构体数据,我们就是按照ID进行读取数据。

我们可以利用Swicth case语句读取存放数据,代码如下:

wKioL1St05ahdoObAAKtmqYnOOw112.jpg

大家看上面的语句,有一个DeserializeObject这个就是C#使用的反序列化函数,我们就是通过它将我们的XML里面的字段保存起来。以下是调用函数

wKiom1St02nwjlfoAADohkh5aTw782.jpg

那么我们只需要调用我们已经保存到Dictionary里面的值就可以了。

比如:

wKioL1St1zfA5SkKAAAmQTRZxKc041.jpg

另外附上xml文件格式:

wKioL1St15uQwMPlAACUH2w90qo397.jpg

是不是很方便?

原文链接:https://www.f2er.com/xml/297412.html

猜你在找的XML相关文章