加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C#中的序列化和Java中的反序列化

发布时间:2020-12-16 01:56:23 所属栏目:百科 来源:网络整理
导读:是否可以在C#中序列化类/对象并在 java中反序列化相同的对象.我想序列化类而不是任何 XML / JSON数据.请澄清. 谢谢 解决方法 我在这里看到3个选项.我建议选项1,Protobufs. 查看Google的ProtoBufs 或者一些等价物.这是java version.这是一个C# port. Protobuf
是否可以在C#中序列化类/对象并在 java中反序列化相同的对象.我想序列化类而不是任何 XML / JSON数据.请澄清.

谢谢

解决方法

我在这里看到3个选项.我建议选项1,Protobufs.

查看Google的ProtoBufs

或者一些等价物.这是java version.这是一个C# port.

Protobufs意味着这种语言互操作.它的二进制,小型,快速和语言无关.

它还具有向后兼容性,因此如果您将来更改序列化对象,您仍然可以阅读它们.此功能对您来说也是透明的,只要您编写代码,了解在反序列化的旧对象时可能会丢失较新的变量.这是一个巨大的优势!

在另一个中实现一种语言的默认序列化

您可以尝试在C#中实现java序列化逻辑,或在Java中实现C#序列化例程.我不建议这样做,因为当你编写新代码时,它会更难,更冗长,几乎肯定会更慢,并且会给你带来相同的结果.

手动编写序列化例程

这肯定会很快,但很乏味,更容易出错,难以维护,灵活性降低……

Here’s some benchmarks用于ProtoBufs等库.这应该有助于您为您的用例选择最佳的一个.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读