c# - 尝试将 ZipArchiveEntry 转换为 byte[]

标签 c# memorystream

我正在尝试获取 ZipArchiveEntry 的列表并将它们转换为字节数组,但我在逻辑上遇到了困难。

到目前为止,我正在尝试将其转换为 MemoryStream 以将其转换为 byte[],如下所示:

public static void ScanUpload(List<ZipArchiveEntry> scan)
{
    foreach (var s in scan)
    {                           
        using (var ms = new MemoryStream())
        {

        }
    }
}

但我不知道接下来会发生什么。或者即使这是解决此问题的正确方法。有人能帮忙吗?

最佳答案

您应该能够从 ZipArchiveEntry.Open() 返回的流中读取:

foreach (var s in scan)
{            
    var stream = s.Open();
    byte[] bytes;
    using (var ms = new MemoryStream())
    {
         stream.CopyTo(ms);
         bytes = ms.ToArray();
    }
}

关于c# - 尝试将 ZipArchiveEntry 转换为 byte[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28352517/

相关文章:

c# - 找不到 System.Xml.Xpath

C# Mysql不更新

c# - 像写入文件一样写入流,但实际上写入对象

c# - 通过 .NET 从 SQL 服务器下载可执行文件是否可能甚至合乎逻辑?

c# - 如何通过soap内存流?

c# - 通过套接字发送大型序列化对象仅在尝试增加字节数组时失败,但在使用大量字节数组时没问题

c# - MongoDb C# 驱动程序在日期时间比较中引发序列化错误

c# - 何时使用 TableController<T> 以及何时使用 Custom DomainManager

c# - 为什么我需要在套接字上定义端点两次才能开始接收数据?

delphi - MemoryStream 并构造字节数组