proto unmarshal失败的问题_proto.unmarshal-程序员宅基地

技术标签: linux  

proto编码完成后是[]byte类型,
强转成string后编码进json的string字段,
在json unmarshal后在第一个数字8后面多了几个数字:
239 191 189(即十六进制EF BF BD)
再proto unmarshal解码失败。

原因是json把string类型进行了utf-8编码,不认识的字符会转换:

在众多的utf-8码点值中,除了ascii,你还应该记住「EF BF BD」,因为它是很多编程语言以及库中的备胎,即无效的码点值在编码的时候会默认用这个码点值进行替换,即utf-8中的超级「备胎」(REPLACEMENT CHARACTER)。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/aashuii/article/details/125264715

智能推荐

微信公众号生成带参数的二维码_微信公众号生成带参数的二维码登录-程序员宅基地

文章浏览阅读5.3k次。官网功能介绍:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp14434335421、获取access_token:根据公众号的appid和appsecket得到access_tokenhttps://mp.weixin.qq.com/debug?token=1795470382&lang=zh_CN2、获取ti..._微信公众号生成带参数的二维码登录

QT 在windows安装步骤 两种方法_qt windows安装-程序员宅基地

文章浏览阅读1.1w次。转自:https://www.cnblogs.com/mrcp/archive/2012/11/05/2754524.html折腾了2个小时,参考了网上的资料,终于把QT装好了要让qt能使用,两种套路都可行:1、安装傻瓜包QtSDK,大概1GB多,你要用到的所有东西都在这里面,按照默认的安装,装好后直接打开qt creator就可以用。2、自己组装:(1)下载Qt Creator (qt-crea..._qt windows安装

NLP问答系统:使用 Deepset SQUAD 和 SQuAD v2 度量评估-程序员宅基地

文章浏览阅读885次,点赞28次,收藏29次。在本文中,我们将研究使用 Deepset 的 SQUAD2 模型进行问答以及使用SQuAD v2 指标评估模型,我们将使用 model —deepset/minilm-uncased-squad2。

L298N电机驱动模块的接线使用与代码实现_l298n电机驱动模块接线-程序员宅基地

文章浏览阅读8.2w次,点赞172次,收藏1.4k次。#include "iostm8s208mb.h"#define u8 uint8_t#define u16 uint16_t#define u32 uint32_ttypedef unsigned char uint8_t;typedef unsigned short uint16_t;typedef unsigned long uint32_t;// 关于LED灯的宏定义#define LED2 PI_ODR_ODR2 //输出量#define LE_l298n电机驱动模块接线

腾讯云发布新品数据编排平台(dop)-与大数据生态紧密结合,提供通用数据编排服务...-程序员宅基地

文章浏览阅读1.7k次。作者介绍毛宝龙腾讯高级工程师,Alluxio PMC & Maintainer,Apache Ozone committer,腾讯 Alluxio OTeam 开源协同团队负责人。主要负责腾讯 Alluxio 的研发和落地工作和 Apache Ozone 的文件系统方向的研发工作。DOP(Data Orchestration Platform)是腾讯推出的数据编排平台服务。定位通用数据编..._编排平台

Myeclipse 10.0 + Hibernate 4.3.5 连接 Oracle 11G_ssh hibenate4.3 jpa oracle11-程序员宅基地

文章浏览阅读1k次。今天从下午开始按照J2EE企业应用实战整合Myeclipse 10.0 + Hibernate 4.3.5 连接 Oracle 11G,在网上找了很多资料,到晚上才搞定。有几个地方要特别注意,我在代码中会详细讲解。现在上完整的代码:先按照书里的要求引入%\hibernate-release-4.3.5.Final\lib\required下面所有的jar包。文件1(News_ssh hibenate4.3 jpa oracle11

随便推点

使用SSM实现校园兼职管理平台系统_.buildfalsejson-程序员宅基地

文章浏览阅读911次,点赞4次,收藏6次。项目编号:BS-PT-056该项目是一个大学生校园兼职平台。该平台使用Java语言开发后台业务逻辑,运用了SpringMVC+Spring+MyBatis框架进行搭建,数据库服务器采用MySQL5.6对数据进行持久化。其主要功能有:兼职招聘、论坛交流、在线聊天、个人中心、信箱留言、登录注册等功能。软件架构或技术说明:后台:SpringMVC+Spring+MyBatis、mysql前台:jquery、layui部署环境:1.服务器:tomcat82.运行环境:.._.buildfalsejson

在Linux上安装QQ_qqlinux版本(2),2024年最新大厂Linux运维高级面试题汇总解答_archlinux 安装 ntqq-程序员宅基地

文章浏览阅读704次,点赞5次,收藏14次。最全的Linux教程,Linux从入门到精通。_archlinux 安装 ntqq

微信小程序分享到朋友圈带参数_showsharemenu 自定义 无效-程序员宅基地

文章浏览阅读2.6k次。微信转发朋友圈功能,目前处于测试阶段,先放个官方文档地址官方文档地址先上代码,这是本人实测可以使用的。onLoad: function(t) { console.log('option', t) wx.showShareMenu({ withShareTicket: true, menus: ["shareAppMessage", "shareTimeline"] }), this.isLogin && this.$store.dispatch(_showsharemenu 自定义 无效

Android组件系列----ContentProvider内容提供者 和 android:authorities-程序员宅基地

文章浏览阅读9k次。authorities 是provider所在的包的名字+provider本身定义的名称 ---zgs 【正文】一、ContentProvider简介:ContentProvider内容提供者(四大组件之一)主要用于在不同的应用程序之间实现数据共享的功能。ContentProvider可以理解为一个Android应用对外开放的接口,只要是符合它所定义的Uri格式的请求,均可以正...

Matlab2019 中文显示问题(乱码与方框)_2019中文文字乱码-程序员宅基地

文章浏览阅读2.8w次,点赞46次,收藏23次。对MATLAB2019b的中文显示问题做出整理,(UI界面和编辑器)原因:中文字体库缺失导致。方法:设置MATLAB的字体为系统已有中文字体主页预设字体桌面代码字体选择 Microsoft YaHei UI同时勾选 “使用系统字体”主页预设字体自定义左边选编辑器,语言选择 Microsoft YaHei UI..._2019中文文字乱码

PopUpWindow使用详解(二)——进阶及答疑_watch_outside_touch-程序员宅基地

文章浏览阅读631次。上篇为大家基本讲述了有关PopupWindow的基本使用,但还有几个相关函数还没有讲述,我们这篇将着重看看这几个函数的用法并结合源码来讲讲具体原因,最后是有关PopupWindow在使用时的疑问,给大家讲解一下。一、常用函数讲解这段将会给大家讲下下面几个函数的意义及用法,使用上篇那个带背景的例子为基础。public void setTouchable(boolean touch..._watch_outside_touch