gpt4 book ai didi

c# - C#中序列化一个对象并获取字节流

转载 作者:太空狗 更新时间:2023-10-29 22:19:28 27 4
gpt4 key购买 nike

我有一个对象,Serializable 类的实例。我想知道如何将此对象作为字节流获取?

我知道我可以使用 BinaryFormatter然后使用 Serialize 方法,但此方法采用 serializationStream 写入序列化对象。我希望能够将它写入特定位置的文件/流中,所以我想做类似的事情:

obj = new Something(); // obj is serializable 
byte[] serialized = obj.serialize(); [*]
file.write(position, serialized)

有什么方法可以执行 [*] 来获取对象序列化的字节?

最佳答案

MemoryStream m = new MemoryStream();
var formatter = new BinaryFormatter();
formatter.Serialize(m, new MyClass() {Name="SO"});
byte[] buf = m.ToArray(); //or File.WriteAllBytes(filename, m.ToArray())


[Serializable]
public class MyClass
{
public string Name;
}

关于c# - C#中序列化一个对象并获取字节流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15750154/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com