一个MemoryStream中的多个文件可能吗?

jwi*_*mer 5 c# memorystream

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

Jus*_*tin 6

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

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);
}
Run Code Online (Sandbox Code Playgroud)

在哪里你应该能够大致了解SaveFiles和的实现GetFiles.我不清楚你为什么要这样做.