我有一个通过
序列化的对象BinaryFormatter formatter = new BinaryFormatter();
StreamWriter writer = new StreamWriter("filename");
formatter.Serialize(writer.BaseStream, the_object);
writer.Close();
是否有一种方法来查看它在一个更容易理解的形式,例如,在json?由于
使用Json。净:
string serialized = JsonConvert.SerializeObject(the_object);
要反序列化它,您可以通过泛型指定对象的类型:
YourEntity deserializedObject = JsonConvert.DeserializeObject<YourEntity>(serialized);
或者你可以利用动态(需要c# 4.0或更新版本):
dynamic deserializedObject = JsonConvert.DeserializeObject(serialized);
我认为以特定格式"查看"序列化对象的唯一方法是首先将其序列化为该格式。除非您想编写大量代码将二进制对象转换为JSON,否则您将无法以JSON形式查看二进制序列化对象。但那完全是浪费时间。
如果数据已经以二进制形式序列化,那么将其反序列化为类对象,然后将其重新序列化为JSON或XML。然后您可以打开这些文件并了解内容。