首页 > Photon > 基础系列 > 使用ProtoBuf-net进行数据的序列化和反序列化
2017
11-10

使用ProtoBuf-net进行数据的序列化和反序列化

转载:http://www.jianshu.com/p/f2e8846a296d

protobuf是google的一个开源项目,可用于以下两种用途:
(1)数据的存储(序列化和反序列化),类似于xml、json等;
(2)制作网络通信协议。

protobuf比XML、比JSON更为强悍,语言无关、平台无关、更小的存储、更少的歧义、更高的性能

源码下载网站https://github.com/mgravell/protobuf-net
打包好的dll文件下载:https://code.google.com/archive/p/protobuf-net/downloads

使用ProtoBuf-net进行数据的序列化和反序列化 - 第1张  | u3d8技术分享

.

我这里直接下载打包好的,直接把里面的dll导入到Unity3D里面操作就行。首先下载好后,直接在protobuf-net r668\Full\unity里面可以找到protobuf-net.dll,直接导入到unity 里面的Plugins文件里面就可以使用了。
在这里我以序列化和反序列化一段简单的信息为例。
首先我先创建一个脚本User

然后创建脚本TestProtobuf去序列化User里面的信息并将生成一个bin文件.我在这里直接把文件保存到本地。

把脚本TestProtobuf挂载在摄像机上,然后运行,就可以看到我们的User信息被序列化成了bin文件保存到了本地里面

使用ProtoBuf-net进行数据的序列化和反序列化 - 第2张  | u3d8技术分享

下面我们就开始反序列化进行解析这个bin文件,并将里面的数据输出来。还是在脚本TestProtobuf里面写入代码,代码如下

运行后就可看到输出结果,就是user.bin文件反序列化出来的角色信息

使用ProtoBuf-net进行数据的序列化和反序列化 - 第3张  | u3d8技术分享

这样我们利用ProtoBuf-net进行序列号与反序列化的过程就完成了。

更多资料学习:
https://www.cnblogs.com/wu-jian/archive/2011/02/22/1961104.html

http://blog.csdn.net/kun1234567/article/details/49758675

最后编辑:
作者:网虫虫
网虫虫
分享是一种快乐; 分享是一种美德; 分享是一种幸福!

0 0 votes
Article Rating
Subscribe
提醒
guest
0 评论
Inline Feedbacks
View all comments