C#将未知类型对象序列化为JSON

时间:2016-11-03 05:56:11

标签: c# json serialization stream memorystream

我一直在寻找如何序列化未知类型的对象,但我找不到任何解决方案,我发现它真的不是那么直接。

班级:

    public Vector3D<int> rentedVMPosition;
    public Value<uint> saveFileVersion;
    public Value<int> score;
    public Value<int> selectedInventorySlot;
    public Value<long> selectedSpawnPointKey;
    public Value<int> skillPoints;
    public Skills skills;
    public MemoryStream skillStream;
    .......... Etc

全班= https://github.com/Karlovsky120/7DaysSaveManipulator/blob/master/source/1.15.0.1/PlayerDataFile.cs

Object Overview Image

在对象内部有MemoryStream对象,似乎无法序列化,当我尝试使用 newtonsoft.json 的JsonConvert.Serialize进行序列化时,它将显示“此流不支持超时“错误。

无论如何,我尝试在使用JsonConvert序列化它时排除MemoryStream对象。它将生成具有空值的JSON,例如 {“example”:“”,“asdsada”:“”}等......我认为这是由于未知的类型。

请有人知道序列化这个对象,非常感谢帮助吗?

0 个答案:

没有答案