代码之家  ›  专栏  ›  技术社区  ›  Raedwald

协议缓冲区字符串字段的文本编码

  •  3
  • Raedwald  · 技术社区  · 8 年前

    如果C++程序接收到具有缓冲区的协议缓冲区消息 Protocol Buffers string field ,表示为 std::string ,该字段中的文本编码是什么?是UTF-8吗?

    1 回复  |  直到 8 年前
        1
  •  6
  •   jpa    8 年前

    Protobuf字符串始终有效 UTF-8 串。

    看到了吗 Language Guide

    字符串必须始终包含UTF-8编码或7位ASCII文本。

    (ASCII也总是有效的UTF-8。)

    并不是所有protobuf实现都强制执行这一点,但如果我没记错的话,至少Python库拒绝解码非unicode字符串。