【问题标题】:serializationexception Visual C# into Unity\mono C#序列化异常 Visual C# 到 Unity\mono C#
【发布时间】:2015-06-07 19:59:03
【问题描述】:

我为我的伙伴编写了一个小 UI,用于在游戏中编写对话框。 UI 正在制作图形并将其二进制序列化为文件。反序列化应该统一实现,但统一发送错误。有什么办法可以解决吗? 序列化:

Stream FileStream = File.Create("save");
BinaryFormatter serializer = new BinaryFormatter();
serializer.Serialize(FileStream, graph);
FileStream.Close();

反序列化:

BinaryFormatter serializer = new BinaryFormatter();
Stream FileStream = File.OpenRead("save");
graph = (Graph)serializer.Deserialize(FileStream);

错误:

SerializationException: 找不到类型 'System.Collections.Generic.List`1[[Dialogs.Node, WindowsFormsApplication1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]'。

【问题讨论】:

  • Unity 中使用的 Mono 2 与 Microsoft .NET 不完全兼容。因此,不可能从一侧进行基于类型的序列化并在另一侧进行反序列化。

标签: c# .net serialization mono


【解决方案1】:

我解决了这个问题。原来 Mono 不能反序列化二进制序列化图,但 XML 序列化解决了这个问题。我将 BinaryFormatter 更改为 Xml 序列化程序,并在 Mono 中完美反序列化。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-21
    • 1970-01-01
    • 1970-01-01
    • 2015-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-13
    相关资源
    最近更新 更多