

Protobuf:转成json不显示零值字段问题
source link: https://www.lpime.cn/article/108
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

protobuf转成json不显示零值字段问题解决
前提:所用语言:C++,版本:最新
问题描述:在使用枚举值时,默认值是从0开始的,导致使用MessageToJsonString转成json字符串时,零值的字段不显示。
enum num
{
a = 0;
b = 1;
c = 2;
}
解决方式:
查看源代码在json_util.h文件中,有转成json字符串选项JsonOptions。修正我们的代码如
std::string out;
google::protobuf::util::JsonOptions options;
options.always_print_primitive_fields = true; //显示默认值
google::protobuf::util::MessageToJsonString(xxx, &out, options);
本文由 Ryan 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为:
2021/01/04 17:03
Recommend
-
101
当一个变量被声明之后, 如果没有初始化, 系统自动赋予它该类型的零值 零值初始化机制可以确保每个声明的变量总是有一个良好定义的值 基本类型的零值 几种基本类型的零值 false 0 0.0 空字符串 ""...
-
22
今天是《有个小问题》系列第一期,我们一起先来看看 Go 语言规范中关于零值的规定。 当通过声明或调用 make 或 new 分...
-
30
最佳实践规范 go程序编写规范: 首行命名这个文件属于哪个包 往下再导入其他包
-
8
V2EX › PostgreSQL postgresql 的日期字段数据转成字符串,能不能设置日期默认转换字符串的格式?
-
3
聊一聊Go语言中的零值,它有什么用?发布于 10 月 3 日哈喽,大家好,我是asong。今天与大家聊一聊Go语言中的零值。大学时期我是一名C语...
-
6
package.json中的main字段指向的是Library的入口,通常有3个选择: 1.指向源代码入口文件,如src/index.js;2.指向打包后的开发版本,如dist/library.js;3.指向打包后的发布版本,如di...
-
6
【一知半解】零值拷贝 应用调用read方法向操作系...
-
1
V2EX › Go 编程语言 go proto3 过滤零值
-
8
一日一技:JSON如何快速转成对象? 2023-09-22 45 362 1 分钟 我们知道,在Python里面,要把JSON转成字典是非常容易的,只需要使用json.loads(JSON字符串)
-
4
flutter将Widget转成Uint8List并显示在地图上 百度地图提供的flutter插件,用起来还是很方便的,常规的需求基本都能满足。但是想在地图上自定义标注,比如实现下图的效果,可就没那么容易了。
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK