HiProtobuf-Excel转Protobuf(支持C++/C#/Golang/Java/Python)

源码连接:

 

 

 

HiProtobuf

Excel转Protobuf

功能说明

  • 将Excel文件生成protobuf文件和protobuf数据
  • 目前支持生成五种语言C++(生成.cpp),C#(生成.cs和.dll),Golang(生成.go),Java(生成.java),Python(生成.py)

如何使用

  1. 选择导出文件的存放目录
  2. 选择Excel文件的存放目录
  3. 选择编译器csc.exe
  4. 点击导出

详细说明

  • 大多数Windows电脑上默认安装.Net Framework,编译器路径一般在C:\Windows\Microsoft.NET\Framework64.如果没有安装从此处下载安装 https://dotnet.microsoft.com/download/dotnet-framework

  • 如果希望导出.go文件,需要额外做一些操作,具体参照官方介绍: https://developers.google.cn/protocol-buffers/docs/gotutorial

  • C#语言额外导出了一份.dll,可以使用.cs源码或者.dll文件

  • 会递归遍历Excel目录下的所有文件

  • 会在导出目录下自动生成三个目录:

    • proto 存放.proto原始文件
    • language 存放各语言的生成文件(比如language/cpp/xx.cpp)
    • dat 存放.dat protobuf序列化数据
  • 支持的数据类型有: "double", "float", "int32", "int64", "uint32", "uint64", "sint32", "sint64", "fixed32", "fixed64","sfixed32", "sfixed64", "bool", "string", "bytes"

  • 支持对应的数组类型,数据分割用|

  • Excel配置格式如下:

    • 第一行为注释说明
    • 第二行为变量类型
    • 第三行为变量命名
  • 运行时使用如下:

  • 扩展:源码里面的对象很容易生成其他语言(Lua/Ruby/PHP...)和数据(Json/Xml/Bin...)


原作者删帖   不实内容删帖   广告或垃圾文章投诉

智能推荐

 java端的具体步骤如下:   1、首先下载 下载protobuf 编译工具   http://code.google.com/p/protobuf/downloads/detail?name=protobuf-2.4.1.zip&can=2&q= 2、书写protobuf文件  3、利用java 命令行,生成 java文件 。 ...

     Protobuf是google提供的一个开源序列化框架,类似于XML,JSON这样的数据表示语言,其最大的特点是基于二进制,因此比传统的XML表示高效短小得多。除了比Json、XML有速度上的优势和使用上的方便外,protocolbuf还可以做到向前兼容和向后兼容。         protobuf 虽然只支持JAVA...

完整的调用代码见文章末尾。         调用C# 1.写一个如下的C#类库   2.将生成的Add.dll放入c++程序的exe生成目录同级 (运行时使用,这样放就不用把dll放入环境变量或系统目录了)   3.再将生成的Add.dll放入项目文件目录 (放这里是为了方便代码引用,就不需要配置引用目录或代码中写引用全路径了) &nbs...

(给程序员的那些事加星标) 原创:程序员的那些事(id:iProgrammer) TIOBE 近日公布了 12 月份的编程语言指数排行榜,前三分别是:Java、C 语言和 Python。 此外,将在下个月宣布 「2019 年度编程语言」。目前有 4 个候选语言:Java (+1.3%), C (+1.8%), Python(+1.9%) 和 C#(+1.4%)。这 4 种语言都在 Top 5。只有...

相比1976年以前的密码学思想,公钥密码学可以在不直接传递**的情况下,完成密文的解密。这个算法机制启发了其他科学家,人们认识到,加密和解密可以使用不同的规则,只要这两种规则之间存在某种对应关系即可,这样就避免了直接传递**。基于这种公钥机制的思想,开始出现了一系列非对称加密算法。 下图比较说明了非对称加密算法与对称加密算法的区别。 非对称加密需要两个(一对)**:公开**(Publickey)和...

猜你喜欢

资讯 马云启动“NASA”计划 为未来20年愿景研发核心科技 2017年3月9日,阿里巴巴集团在杭州召开首届技术大会,会议透露,阿里巴巴正在启动一项代号“NASA”的计划,面向未来20年组建强大的独立研发部门,建立新的机制体制,为服务20亿人的新经济体储备核心科技。 阿里巴巴未来20年的愿景是构建世界第五大经济体,服务全球20亿消费者,创造1亿就业机...

论文阅读:BERT:Pre-training of Deep Bidirectional Transformers for Language Understanding 预训练的深度双向 Transformer 语言模型   原文链接:BERT: Pre-training of Deep Bidirectional Transformers for Language Under...

做一名优秀的软件开发qa As a PHP developer, or any kind of developer as a matter of fact, you need to constantly improve yourself in this ever-changing industry; you need to learn and use new knowledge every day...

windows命令提示符 Command line interfaces can be downright boring and always seem to miss out on the fresh coats of paint liberally applied to the rest of Windows.  Here’s how to add a splash of...

原文链接 作为一名iOS开发工程师,我深深的明白一个app从设计到开发再到提交AppleStore审核其中的艰辛与不易,审核通过以后还要依靠市场和运营同志们的广告推广宣传,一路走来很不容易,在这种互联网环境下,说不定哥们我的app哪天就火了呢,是不是! App Store上面针对 iOS app 会有一个畅销排行榜,我们可以通过它的排名去了解一下当前最火的app,它会将排名靠前150位的app显示...

最新推荐

C#代码   Java代码 Java CRC16代码   C代码 C语言 CRC16代码  ...

 SWIG,把C/C++ API 导出成Java,C#,Python,Ruby,Php的类库             文艺一点总结,SWIG就是C/C++类库与泛高阶语言的万能粘合剂。    按照Swig的思路,C/C++是很优秀的library级代码语言,而写界面等方面则是Java、C#...

6款Java转C#的最佳工具 发表于2014-03-28 11:46| 11951次阅读| 来源Designzum| 63 条评论| 作者vikas JavaC#转换工具面向对象开发者编程语言 摘要:开发者在开发过程中经常会遇到将Java转换成C#的情况,若要重头写代码,那会是让人抓狂的一件事。但如果能利用好转换工具的话,开发者的工作效率就能大大提高了。本文将为大家介绍6款最佳Java转C#的工具...

C++实现,支持跨平台(Windows,Android,IOS),支持跨语言(C++,C#,Java)的网络库 这个网络库是在 CppNetworkLibrary(http://www.cnblogs.com/winter-yu/p/4688481.html )的基础之上做的一些优化与调整。 写这个库的目的是为了帮助那些在网络编程方面没有太多经验的人,能够让你不用去关心底层的实现,只用简单的调用几...

(转)C# Office操作 2010-06-13 00:36 这两天整理了一下使用C#对word的操作,这里和大家分享:   1、新建Word文档 CreateWordFile 新建Word文档#region 新建Word文档 /**//// <summary> /// 动态生成Word文档并填充内容 /// </summary> /// <param name=&...

问答精选

Basically I have 4 divs and I would like when a user hovers the cover-image div, show the some content(content-description div) on the left side of the div. I don't want to collapse cover-image div at...

I am currently working on a project that involves a lot of html parsing. I have come across and issue that I cannot find the solution to. Basically, what I have is an application that downloads html f...

I am unable to serialize an Enum to GWT if it implements java.io.Serializable. It will GWT compile successfully, but at runtime, I get the dreaded: Type 'com....security..AdminPrivilege' was not assig...

In Firebase functions documentation it mentions that this in Before (<= v0.9.1) has been changed to in Now (>= v1.0.0) But that returns an undefined in onWrite(snap, context) trigger. What shoul...

This was my first game launch, I have published my game to play store using the Upload certificate SHA key, instead of App signing certificate. So my leader boards are not working. What should I do no...