Protocol buffer的使用案例
Protocolbuffer(以下简称PB)是google 的一种数据交换的格式,它独立于语言,独立于平台。google 提供了多种语言的实现:java、c#、c++、go 和 python,每一种实现都包含了相应语言的编译器以及库文件。由于它是一种二进制的格式,比使用 xml 进行数据交换快许多。可以把它用于分布式应用之间的数据通信或者异构环境下的数据交换。作为一种效率和兼容性都很优秀的二进制数据传输格式,可以用于诸如网络传输、配置文件、数据存储等诸多领域。
protobuf已经全面迁移到github,地址:https://github.com/google/protobuf
直接下载2.6.1版本:https://github.com/google/protobuf/archive/v2.6.1.zip
Linux 平台使用PB的方法:
参考: http://blog.csdn.net/xiexievv/article/details/47396725
Windows 平台使用PB的方法
(1)C++
进入 protobuf-2.6.1\vsprojects 目录,打开protobuf.sln解决方案 (注意:如果没有这个目录,那么请用cmake工具生成目录,https://cmake.org/)编译libprotobuf工程,生成 protoc.exe、libprotobuf.lib、libprotoc.lib。
两个库文件拷贝到你的具体工程路径下使用。(头文件也需要拷贝,路径: protobuf-2.6.1\vsprojects\include)。protoc.exe 用于编译你的.proto文件,生成对应 *.h ,*.cpp文件.
示例:protoc -I=F:\buildprotobuf --cpp_out=F:\buildprotobuf F:\buildprotobuf\upmsg.proto
命令正确执行后,将生成的头文件,源文件拷贝到你的工程中使用就可以了。
*.proto文件格式请参考 eamples目录下的addressbook.proto.
(2)C#
参考:http://www.cnblogs.com/designyourdream/p/4267230.html