多个文件在一个内存流

本文关键字:一个 内存 文件 | 更新日期: 2023-09-27 18:16:10

是否可以将文件列表保存到一个MemoryStream中,然后将文件保存回磁盘?

多个文件在一个内存流

是的,有几种方法可以做到这一点但其中一种是这样做的:

class MyFile
{
    public byte[] Data;
    public string FileName;
}
List<MyFile> files = GetFiles();
using (MemoryStream stream = new MemoryStream())
{
    // Serialise
    BinaryFormatter formatter = new BinaryFormatter();
    formatter.Serialize(stream, files);
    // Deserailise
    stream.Position = 0;
    List<MyFile> deserialisedFiles = (List<MyFile>)formatter.Deserialize(stream);
    SaveFiles(deserialisedFiles);
}

您应该能够大致计算出SaveFilesGetFiles的实现。我不完全清楚你为什么要这样做。