【问题标题】:BinaryFormatter serialization/deserialization alternative in AndroidAndroid 中的 BinaryFormatter 序列化/反序列化替代方案
【发布时间】:2011-09-30 03:50:51
【问题描述】:

我有一个使用 BinaryFormatter 序列化方法在 C# 中序列化的类。有什么办法可以在android应用程序中反序列化它。我的意思是 android 中有 BinaryFormatter 的替代品吗?

【问题讨论】:

    标签: android serialization deserialization binaryformatter


    【解决方案1】:

    查看以下 URL,了解针对 .NET 序列化的 java 序列化

    http://msdn.microsoft.com/en-us/library/e474a3yk%28v=vs.80%29.aspx

    【讨论】:

    • 嗨,Deepak,我试过这个来读取文件,但这总是给我一个 java.io.StreamCorruptedException 异常。
    【解决方案2】:

    在做一些研究后回答我自己的问题。

    为了反序列化在 .Net 中序列化的 android (java) 中的对象,我们必须使用自定义序列化在 .Net 中序列化我们的类,我的意思是使用原始数据类型而不是使用内置的 .Net 序列化程序。然后 android 应用程序使用原始数据类型以完全相同的顺序反序列化。

    总而言之,我们需要以某种顺序在流上写入原始数据类型,并在 android 中以完全相同的顺序从流中读取相同的原始数据类型,它们在 .Net 中写入。 XML也可以用于序列化和反序列化

    希望有帮助

    【讨论】:

    • 嗨 Omar,有没有办法在 c# 中序列化对象并在 android(java) 中读回?
    • 嗨,正如我在回答中提到的,您必须使用自定义序列化而不是使用内置的 .Net 序列化程序。通过自定义序列化,我的意思是您必须使用诸如 writer.writeInt(intVariable) 之类的 Writter 方法编写对象,并以相同的顺序读取 android reader.readInt()。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-08-12
    • 1970-01-01
    • 1970-01-01
    • 2014-12-10
    • 2011-01-08
    • 1970-01-01
    • 2013-09-23
    相关资源
    最近更新 更多