需要实现 Java
端和 c#
端的通信,选择的是 Protobuf
。JAVA
端的使用的是官方下载的编译工具,c#
端选了 Protobuf-net
的。用了之后发现,Protobuf-net
的实现并不兼容官方的实现。原因至少有一点:
Protobuf-net使用C#的byte[]来实现bytes,而Java以及Protobuf-csharp-port均使用ByteString,前者是无符号的,后者是有符号的
需要实现 Java
端和 c#
端的通信,选择的是 Protobuf
。JAVA
端的使用的是官方下载的编译工具,c#
端选了 Protobuf-net
的。用了之后发现,Protobuf-net
的实现并不兼容官方的实现。原因至少有一点:
Protobuf-net使用C#的byte[]来实现bytes,而Java以及Protobuf-csharp-port均使用ByteString,前者是无符号的,后者是有符号的