2

我有一个 java 程序(jar),它用 ObjectOutputStream 将一个类序列化为文件。我需要在 .NET 项目中使用这部分程序,为此我使用 ikvmc.exe 将 jar 转换为 .NET dll。一切正常,但序列化文件在某些​​部分与直接使用 java 程序序列化的文件不同。您对拥有相同的序列化文件有什么建议吗?

4

1 回答 1

1

Java 序列化和反序列化只有在双方都使用相同的编译类时才有效。如果你序列化 Java VM 运行时的类,那么你应该在两边使用完全相同的 VM 版本。在另一种情况下,这些类可以有不同的 serialVersionUID。

根据 IKVM 版本,它取决于不同的 OpenJDK 版本。例如基于 OpenJDK 1.7.0 的 7.x 版本。

于 2012-10-11T19:37:14.813 回答