C#将字节数组转换为通用列表

Nat*_*han 2 c# resources

我有一个自定义列表,我想将其作为资源嵌入,因此可以在每次新安装时复制它.但是,我的列表被序列化为二进制文件,当我将其作为资源添加时,我不能将其复制出来,因为C#将其视为字节数组.当我从资源中提取文件时,我需要能够将此字节数组转换回我的自定义列表.有人能告诉我如何完成这种转换吗?

谢谢!

Mar*_*ell 6

你用什么方式序列化它?通常你会反转这个过程.例如:

BinaryFormatter bf = new BinaryFormatter();
using(Stream ms = new MemoryStream(bytes)) {
    List<Foo> myList = (List<Foo>)bf.Deserialize(ms);
}
Run Code Online (Sandbox Code Playgroud)

显然,如果你使用了不同的序列化器,你可能需要调整它!或者,如果您可以将数据作为Stream(而不是a byte[])获取,则可能会丢失该MemoryStream步骤...