青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Google ProtoBuf開發示例

Posted on 2012-04-13 11:25 chugf 閱讀(8513) 評論(2)  編輯 收藏 引用

一、簡介

ProtocolBuffer是用于結構化數據串行化的靈活、高效、自動的方法,有如XML,不過它更小、更快、也更簡單。你可以定義自己的數據結構,然后使用代碼生成器生成的代碼來讀寫這個數據結構。你甚至可以在無需重新部署程序的情況下更新數據結構。

二、特點

ProtocolBuffer擁有多項比XML更高級的串行化結構數據的特性,ProtocolBuffer

·   更簡單

·   3-10

·   20-100

·   更少的歧義

·   可以方便的生成數據存取類

例如,讓我們看看如何在XML中建模Personnameemail字段:

<person>
    <name>John Doe</name>
    <email>jdoe@example.com</email>
</person>

對應的ProtocolBuffer報文則如下:

#ProtocolBuffer的文本表示
#
這不是正常時使用的二進制數據
person {
    name: "John Doe"
    email: "jdoe@example.com"
}

三、開發步驟

1、下載包( http://code.google.com/p/protobuf/downloads/ ),包含了JavaPython、C++ProtocolBuffer編譯器,用于生成你需要的IO類。構建和安裝你的編譯器,跟隨README的指令就可以做到。

一旦你安裝好了,就可以跟著編程指導( http://code.google.com/apis/protocolbuffers/docs/tutorials.html )來選擇語言-隨后就是使用ProtocolBuffer創建一個簡單的應用了。

2、創建. proto文件,文件中定義你需要做串行化的數據結構信息,下面定義個Order. Proto

package xquant;
option java_package = "com.xquant";
option java_outer_classname = "Order";
 
message Order {
  required int32 action = 1;
  required string serialNo = 2;        
  required string version = 3;
  optional string operator = 4;
  required string code = 5;
  required string name = 6;
  required string price = 7;
  required string amount = 8;
}

 

 

3、使用googleprotoc.exe生成對應的C++文件,在CMD命令框中輸入如下命令(路徑根據實際情況修改):

F:\projects\c++\protobuf-2.4.1\examples>protoc --cpp_out=F:\projects\c++\protobu

f-2.4.1\examples order.proto

生成文件:

order.pb.h

order.pb.cc

4、新建C++工程Demo,把order.pb.horder.pb.cc加入工程中,添加lib

#   pragma comment(lib, "libprotobuf.lib")

代碼如下:

 

#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <string>
#include "order.pb.h"
using namespace std;
 
void initOrder(xquant::Order* order) {
  order->set_action(100);
  order->set_serialno("100abc");       
  order->set_version("1.00.003");
  string code = "TF0001";
  order->set_code(code);
  string name = "test";
  order->set_name(name);
  order->set_price("10.01");
  order->set_amount("10000000.00");
}
 
int _tmain(int argc, _TCHAR* argv[])
{
         GOOGLE_PROTOBUF_VERIFY_VERSION;
 
         // 組裝報文
         xquant::Order order;
         initOrder(&order);
 
         // 對象序列化為string
         string order_str;
         order.SerializeToString(&order_str);
         cout << order_str << endl;
         // 顯示調式報文
         string order_debug = order.DebugString();
         cout << order_debug << endl;
 
         // string反序列化為對象
         xquant::Order order_2;
         order_2.ParseFromString(order_str);
         cout << order_2.code() << endl;
         cout << order_2.name() << endl;
 
         google::protobuf::ShutdownProtobufLibrary();
 
         getchar();
 
         return 0;
}

 

 

Feedback

# re: Google ProtoBuf開發示例[未登錄]  回復  更多評論   

2012-11-16 10:34 by frank
有時間用MINA和C++做個小項目嗎?
我的QQ:1650121116

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


posts - 5, comments - 22, trackbacks - 0, articles - 0

Copyright © chugf

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            免费欧美视频| 欧美另类女人| 欧美福利一区| 亚洲精品女av网站| 欧美日本韩国一区| 在线中文字幕日韩| 久久久精品五月天| 亚洲三级电影全部在线观看高清| 一区二区三区国产盗摄| 欧美日韩三级在线| 亚洲欧美日韩中文视频| 亚洲字幕一区二区| 国产在线国偷精品产拍免费yy| 亚洲电影免费观看高清| 亚洲黄色一区二区三区| 欧美日韩伊人| 欧美一区网站| 欧美激情久久久| 亚洲在线中文字幕| 一区免费观看| 欧美日韩中文字幕| 欧美在线影院在线视频| 亚洲国内欧美| 久久国产精品一区二区三区四区| 免费视频最近日韩| 亚洲一区三区电影在线观看| 久久精品免费观看| 亚洲人成人77777线观看| 国产精品欧美日韩久久| 久久综合九九| 亚洲一区二区三区中文字幕| 欧美国产综合| 久久精品夜色噜噜亚洲aⅴ| 亚洲美女精品成人在线视频| 欧美日韩一区视频| 美女久久网站| 另类激情亚洲| 亚洲午夜视频在线观看| 国产一区二区激情| 欧美激情一区二区三区在线| 欧美一区二区三区久久精品茉莉花 | 欧美二区在线播放| 欧美一区二区免费观在线| 最新日韩在线| 久久久久久穴| 午夜伦理片一区| 一本色道久久精品| 亚洲黄一区二区| 国产亚洲精品高潮| 国产精品久久久久久久久久久久久 | 在线一区二区日韩| 在线精品国产成人综合| 国产亚洲精品v| 国产精品一区二区三区四区 | 亚洲第一中文字幕在线观看| 国产免费观看久久| 国产精品高潮呻吟视频| 欧美人与禽性xxxxx杂性| 久久人人爽国产| 久久激情视频免费观看| 亚洲一区二区网站| 一区二区三区.www| 亚洲人成网站在线播| 亚洲丰满少妇videoshd| 欧美成人影音| 蜜臀av在线播放一区二区三区| 久久精品欧美| 久久久久久电影| 久久精品日韩一区二区三区| 欧美一区二区在线| 欧美夜福利tv在线| 欧美一区二区三区四区视频| 欧美一级视频| 欧美主播一区二区三区| 久久精品国产精品亚洲综合| 欧美一区二区三区在线观看| 欧美专区日韩专区| 久久精品国产99国产精品澳门| 亚洲一区二区免费视频| 激情欧美日韩| 欧美不卡激情三级在线观看| 亚洲视频你懂的| 久久久久国产免费免费| 亚洲自拍偷拍色片视频| 噜噜噜噜噜久久久久久91| 久久激情五月丁香伊人| 欧美日韩精品在线观看| 欧美高清不卡| 在线看日韩欧美| 欧美a级片网站| 亚洲尤物在线| 欧美一级成年大片在线观看| 久久精品夜色噜噜亚洲aⅴ| 久久视频在线视频| 欧美精品电影| 国产精品一区二区三区免费观看| 国产亚洲激情| 亚洲日本在线视频观看| 中国亚洲黄色| 久久久久久久97| 亚洲高清视频在线| 亚洲午夜激情网页| 欧美在线亚洲综合一区| 免费毛片一区二区三区久久久| 欧美另类videos死尸| 国产精品亚洲成人| 伊人久久成人| 一本色道久久综合亚洲精品小说| 亚洲综合电影| 欧美福利电影网| 99国产精品| 久久久久99精品国产片| 欧美人与性动交α欧美精品济南到| 国产精品乱人伦中文| 亚洲国产合集| 小处雏高清一区二区三区 | 欧美韩日高清| 亚洲香蕉伊综合在人在线视看| 欧美一区91| 欧美日韩成人激情| 红杏aⅴ成人免费视频| 亚洲永久在线| 亚洲风情亚aⅴ在线发布| 亚洲自拍偷拍视频| 欧美精品二区| 在线看视频不卡| 欧美一区二区在线播放| 亚洲激情偷拍| 久久久久久久久久久一区| 欧美小视频在线| 亚洲精品国精品久久99热| 久久精品国产v日韩v亚洲| 日韩亚洲精品视频| 蜜臀久久99精品久久久画质超高清| 国产欧美日韩免费| 一本色道久久综合狠狠躁的推荐| 久久久久久国产精品一区| 亚洲精品国久久99热| 国产精品黄色| 狠狠色丁香婷婷综合| 国产日韩欧美夫妻视频在线观看| 欧美激情偷拍| 麻豆精品在线观看| 美女网站在线免费欧美精品| 久久精品av麻豆的观看方式 | 久久婷婷成人综合色| 亚洲激情综合| 亚洲精品1区| 久久精品免费看| 久久亚洲综合网| 国产伦精品一区二区三区四区免费 | 欧美一区二区视频观看视频| 欧美三区在线观看| 99在线精品免费视频九九视| 欧美凹凸一区二区三区视频| 久久av一区| 国产一区二区欧美| 久久精品99无色码中文字幕 | 久久综合给合久久狠狠色| 亚洲一区二区三区免费在线观看| 欧美日韩免费看| 夜夜精品视频一区二区| 亚洲高清久久| 欧美激情中文字幕在线| 亚洲精品资源| 亚洲精品日产精品乱码不卡| 欧美精品在线免费观看| 日韩亚洲欧美成人| 亚洲国产日韩欧美在线动漫| 欧美风情在线观看| 日韩一级黄色片| 99国产一区二区三精品乱码| 欧美午夜美女看片| 亚洲欧美日韩视频二区| 亚洲与欧洲av电影| 国产日韩精品一区二区| 久久综合激情| 欧美成人免费一级人片100| 99精品免费| 亚洲视频网在线直播| 国产欧美视频一区二区三区| 久久视频这里只有精品| 噜噜噜躁狠狠躁狠狠精品视频| 亚洲激情不卡| 一本色道久久综合亚洲精品小说 | 日韩视频在线一区二区| 亚洲美女电影在线| 国产精品视频99| 麻豆乱码国产一区二区三区| 欧美高清一区二区| 亚洲一区尤物| 久久精品视频播放| 亚洲精品九九| 中文在线一区| 亚洲国产成人不卡| 激情视频一区| 欧美一区二区三区四区在线观看地址 | 日韩午夜视频在线观看| 裸体一区二区三区| 亚洲大胆人体视频|