从 C# 的 zip 文件中读取二进制文件而不解压它

2024-01-26

我想从 zip 文件中读取二进制文件而不解压缩它。

zip 文件结构:

zipFolderName/subFolder/BinFile

在 BinFile 中,我有:

Id1, id2, value1 // id1, id2 are string, value1 is int

In C#:

 ZipEntry binFileName = …; // it has been got from zipFile entries
 MemoryStream ms  = new MemoryStream();
 binFileName.Extract(ms);

using (BinaryReader reader = new BinaryReader(ms))
{
    string id1 = reader.ReadString(); // error popped here
    string id2 = reader.ReadString();
    int value1 = reader.ReadInt32();
}

我收到错误: 无法读取超出流末尾的内容。 看来 BinaryReader 无法读取 MemoryStream ?


After binFileName.Extract(ms);尝试以下操作:

ms.Seek(0, SeekOrigin.Begin);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 C# 的 zip 文件中读取二进制文件而不解压它 的相关文章

  • 如何将 pem 公钥转换为 openssl RSA* 结构

    假设我必须像这样公开 pem 密钥 BEGIN PUBLIC KEY MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC7vbqajDw4o6gJy8UtmIbkcpnk O3Kwc4qsEnSZp TR fQi
  • Code First - 实体框架 - 如何公开外键

    我有以下数据对象 public class Customer System Data Entity ModelConfiguration EntityTypeConfiguration
  • 使用 Thread.Sleep() 时,异步编程如何与线程一起工作?

    假设 前言 在之前的问题中 我们注意到Thread Sleep阻塞线程参见 什么时候使用Task Delay 什么时候使用Thread Sleep https stackoverflow com questions 20082221 whe
  • 是否可以用 C# 为 Android 编写应用程序?

    我们都知道Android运行Dalvik VM程序 通常开发人员用 Java 编写程序并将其编译为 Dalvik 字节码 我想知道是否有可能创建一个可以接受 C 代码并将其编译为 Dalvik 字节码的编译器 嗯 这是一种选择 或者您可以在
  • C++ 克隆惯用语中协变返回类型的用处?

    通常的克隆习惯使用协变返回类型 struct Base virtual Base clone struct Derived public Base Derived clone 我读过一些内容 大意是协变返回类型是 C 后来添加的 较旧的编译
  • 未定义条件编译符号

    我无法让 Visual Studio 按照我的预期运行 我创建了 2 个配置文件 一个定义了符号 FOO 另一个定义了符号 BAR 我有这个代码 static class MyClass if FOO public static strin
  • NHibernate 中具有不同类型答案的问题

    我正在尝试找到一个问卷问题的简洁解决方案 假设我有一个Questionnaire类有一个集合Answers e g public class Questionnaire public virtual ISet
  • Parallel.For 和 Break() 误解?

    我正在研究 For 循环中的并行性中断 看完之后this http tipsandtricks runicsoft com CSharp ParallelClass html and this http reedcopsey com 201
  • 使用32位应用程序获取syswow64目录

    我正在尝试在系统目录中查找文件 问题是当使用 Environment SystemDirectory 在 x64 计算机上 我仍然获得 System32 目录 而不是 Systemwow64 目录 我需要在 x86 机器上获取 System
  • 读取所有进程内存以查找字符串变量c#的地址

    我有 2 个用 C 编写的程序 第一个名为 ScanMe 的程序包含一个包含值 FINDMEEEEEEE 的字符串变量 以及一个值为 1546 22915487 的双精度变量 另一个名为 MemoryScan 的程序读取第一个程序的所有内存
  • 在 C# 中加密并在 Flex 中解密

    我需要解密 Flex 中的一些数据 这些数据是用 C 加密并写入文件的 为了简单起见 我选择使用 as3crypto As3 库和 Bruce Schneier C 库 AS3 as3加密链接 http code google com p
  • 我可以在C中直接比较int和size_t吗?

    我可以比较一个int and a size t像这样的变量 int i 1 size t y 2 if i y Do something 或者我必须输入其中之一 只要满足以下条件 它就是安全的int为零或正数 如果它是负数 并且size t
  • 为什么 OOP 中静态类的最佳实践有所不同?

    我目前正在阅读有关 Java 最佳实践的内容 我发现根据这本书 https rads stackoverflow com amzn click com 0321356683我们必须优先选择静态类而不是非静态类 我记得在 C 最佳实践中 我们
  • 更新插入 MongoDB 时如何防止出现“_t”字段?

    我有一个应用程序 它使用 MongoDB 的 C 驱动程序将 Upsert 插入 MongoDB 数据库 当我打电话给Update函数 我无法指定我要更新的类型 然后 t字段插入元素的类型 这是我用来更新插入的代码 collection U
  • 什么是多重重继承?

    我将以下称为 多重重新继承 直接继承一个类一次 并通过继承其一个或多个后代来间接继承一次或多次 通过继承一个类的两个或多个后代来间接继承一个类两次或多次 我想知道它是否存在以及如何明确访问嵌入的子对象 1 Professional C 2n
  • 父窗体中的居中消息框[重复]

    这个问题在这里已经有答案了 有没有一种简单的方法可以在 net 2 0中将MessageBox居中于父窗体中 我在 C 中确实需要这个并发现中心消息框 C http bytes com topic c sharp answers 26712
  • jquery ajax“发布”调用

    我是 jQuery 和 Ajax 的新手 并且在 发布 方面遇到问题 我正在使用 jQuery Ajax post 调用将数据保存到数据库 当我尝试保存数据时 它将 null 传递给我的 C 方法 jQuery 看起来像这样 functio
  • 如果未返回,则在一段时间后终止线程

    我有一个线程从网络或串行端口获取一些数据 如果 5 秒内没有收到数据 则线程必须终止 或返回 false 换句话说 如果线程运行时间超过 5 秒 则必须停止 我用 C 编写 但任何 NET 语言都可以 有两种方法 1 封装超时 从网络或串行
  • 使用 wmi 获取活动会话(Win32_LogonSession 还返回非活动/旧会话)

    有没有办法只显示 wmi 的活动会话 问题是 Win32 LogonSession 还显示不活动 断开连接的会话 ManagementScope scope new ManagementScope ManagementPath Defaul
  • 如何在Asp.Net Core中自定义开发者异常页面?

    这常见于ConfigureStartup cs 文件的方法具有如下所示的代码 if env IsDevelopment app UseDeveloperExceptionPage new DeveloperExceptionPageOpti

随机推荐

  • Servlet 会话无效

    我在 2 个不同的服务器上有 2 个应用程序 Tomcat 基本上是 WAR 文件 和 jBoss 中的 EAR EAR 是一个可重用的应用程序 我将在其中对用户进行身份验证并将控件发送回 Tomcat 上的应用程序 在进行身份验证时 我在
  • 从带有转场的 unix 命令行图像创建视频

    我发现了几个有关如何从图像创建视频的问题及其答案 我设置了其中两个并能够正确生成视频 我尝试了以下方法 图像魔术师转换 延迟 100 质量 75 photo1 jpg photo2 jpg movie mpg FFMPEGffmpeg r
  • RedisSessionStateProvider 错误未知命令“EVAL”

    当我在本地运行 Microsoft Web Redis RedisSessionStateProvider 时 出现以下错误 StackExchange Redis RedisServerException ERR unknown comm
  • 如何用正数和负数来计算增长?

    我正在尝试用正数和负数计算 Excel 中的增长百分比 This Year s value 2434 Last Year s value 2 我使用的公式是 This Year Last Year Last Year 2434 2 2 问题
  • .net core 中是否有任何公共 MemberNotNull/MemberNotNullWhen 属性

    不久前我读过以下关于C 8中可空引用分析的文章 https www meziantou net csharp 8 nullable reference types htm https www meziantou net csharp 8 n
  • 在查询字符串中将隐藏字段从一个页面传递到另一页面

    我想通过查询字符串将隐藏字段中的查询从一页传递到另一页 谁能帮我理清逻辑吗 值得花时间学习jQuery http jquery com 它并不是很复杂 并且使得编写 javascript 变得更加容易 还有很多 jQuery 插件 例如jq
  • SOA 中的循环依赖

    我猜这是一个常见问题 但我会尝试描述我当前的问题 我有一个基本服务 我们将其命名为 CoreService 它提供了我想说的 主要 功能 处理数据库中的数据 我们的应用程序中有一个集中式数据库 还有许多其他应用程序 其中一些应用程序有自己的
  • 如何使用 TortoiseSVN 进行分支和合并? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 你怎么分支和合并 http svnb
  • 使 Box2d 对象遵循预定路径

    我正在制作一个游戏 其中某个对象 建模为 box2d 主体 必须遵循固定路径 有没有一种方法可以指定路径坐标并使对象在每个 dt 上前进 Thanks 另外一个选择 将鼠标关节连接到您的身体上 使用鼠标关节的setTarget方法来移动身体
  • 枚举常量特定的类体是静态的还是非静态的?

    我有一个枚举类型类 public enum Operation PLUS Override double apply double x double y ERROR Cannot make a static reference to the
  • MongoDB聚合项目检查数组是否包含

    我有以下文件 id 21353456 username xy text asdf comments username User1 text hi username User2 text hi1 username User3 text hi2
  • JOLT 移位转换以过滤数组中的值

    我想使用 JOLT 转换来做两件事 过滤名为 myarray 的数组中的元素 以便仅保留具有 v 518 属性的元素 过滤掉除 v 518 和 lfdn 之外的其余元素的所有属性 Input isError false isValid tr
  • 等待异步读取所有文件(FileReader),然后运行代码

    我有一个页面 用户可以在其中选择一个文件夹来上传文件 在发送文件之前 我需要阅读它们并检查数据 我的代码组织如下 folder select on change getValidFileList var fileList var getVa
  • 如何安排 Callable 在特定时间运行?

    我需要在一天中的特定时间运行可调用的 一种方法是计算现在与所需时间之间的时间差 并使用 executor scheduleAtFixedRate 有更好的主意吗 executor scheduleAtFixedRate command TI
  • 选择计数 = 1 的位置

    Table LESSON有字段LessonDate MemberId 除其他外 但只有这两个是相关的 英语 给我一份只上过一门课的学生上这门课的日期列表 我已经尝试了很多事情 这是我的最新尝试 SELECT LessonDate FROM
  • 如何在 Azure 搜索 REST API 上使用“id”删除特定文档?

    我想知道如何删除Azure搜索索引中的特定文档 我想通过 REST API 使用 id 来删除文档 我曾寻找过 但找不到路 odata context https xxxx metadata docs value search score
  • 为什么 rake asset:precompile 在开发中会出现问题,但在我的生产环境中不会出现问题

    我已将 heroku 上的应用程序升级为 cedar stack 以便资产管道正常工作 我已按照中给出的说明进行操作Heroku 的文档 https devcenter heroku com articles rails3x asset p
  • git clone 后跟状态显示未跟踪的文件

    抱歉 我是 git 新手 尽管我非常熟悉旧的源代码控制系统 如 cvs 和 svn 我的最终目标是通过在本地克隆远程存储库 将文件添加到本地存储库 提交更改 然后将本地存储库推回远程 将文件添加到远程存储库 不在我的计算机上 我试过这个 g
  • 访问 WCF UsernamePasswordValidator 中的当前 InstanceContext

    我有一个使用自定义 UsernamePasswordValidator 的 WCF 服务 验证器需要访问我的实体框架上下文 我想为整个服务调用创建一个 ObjectContext 然后在调用结束时销毁 处置它 因此 我创建了一个提供此功能的
  • 从 C# 的 zip 文件中读取二进制文件而不解压它

    我想从 zip 文件中读取二进制文件而不解压缩它 zip 文件结构 zipFolderName subFolder BinFile 在 BinFile 中 我有 Id1 id2 value1 id1 id2 are string value