Memorystream.Read() 始终返回 0 bytesRead 和空 byte[]

2024-03-25

我目前有一个内存流 http://msdn.microsoft.com/en-us/library/System.IO.MemoryStream(v=vs.110).aspx长度约为30000 (Named memStream here) 我希望这个内存流在chunks使用以下代码(我在网上找到并进行了一些修改):

        byte[] chunk = new byte[4096];
        bool hasNext = true;

        while(hasNext)
        {
            int index = 0;

            while (index < chunk.Length)
            {
                int bytesRead = memStream.Read(chunk, index, chunk.Length - index);
                if (bytesRead == 0)
                {
                    break;
                }
                index += bytesRead;
                //Do something with this chunk
            }
            if (index != 0) // Our previous chunk may have been the last one
            {
                //Do something with the last chunk
            }
            if (index != chunk.Length) // We didn't read a full chunk: we're done
            {
                hasNext = false;
            }
        }

然而以下read()该方法似乎不起作用

  int bytesRead = memStream.Read(chunk, index, chunk.Length - index);

  WHERE
    chunk: new byte[4096]
    index: 0
    memstream: capacitiy & length : 34272
    memstream: position 0 (according to VS watch)

 Always returns
    0 bytesRead
    Chunk with all values containing '0'

知道为什么吗?这可能是权限许可吗?

感谢您的时间。


创建并填充 MemoryStream 后,您需要将读取位置设置为开头,如下所示:

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

Memorystream.Read() 始终返回 0 bytesRead 和空 byte[] 的相关文章

随机推荐

  • 在 Rstudio 中使用 knitr 和在命令行中使用 knit2html 时,HTML 输出有所不同

    我正在尝试使用 knit 从 R markdown 文件生成 html 文档 当我在 R studio 中使用 knit html 按钮时 它工作正常 并且得到了我想要的输出 然而 当我在命令行中使用 knit2html 时 输出 html
  • 在 mono/Linux 下从命名管道读取/写入

    我想从 Linux 下的命名管道 FIFo 队列中读取 写入 我已经尝试了标准类 StreamWriter 和 System IO 中的其他类 但它失败了 因为它正在使用查找 有人曾经使用 Mono 从命名管道中写入 读取过吗 我正在设法阅
  • ES6 导入的执行顺序(HTML 和代码)

    如果我有以下情况 我说得对吗 你不能 100 确定three js将被处决AFTER one js and two js 但是 如果我有 我说得对吗 我可以有信心three js将被处决AFTER one js and two js 这个很
  • 不确定如何使用 CICrop 裁剪图像

    我正在尝试使用 CICrop 裁剪图像 但是当我尝试裁剪时 它崩溃并显示以下错误消息 由于未捕获的异常 NSUnknownKeyException 而终止应用程序 原因 setValue forUndefinedKey 这个类 不符合键的键
  • Entity Framework 4 CTP 4 Code First:如何使用非常规的主键和外键名称

    实体框架 4 中是否有方法 如果重要的话使用 CTP4 和 Code First 来更改用于自动识别主键和外键的约定 我尝试将 EF 与旧数据库一起使用 该旧数据库使用 pk fk 前缀而不是 id 后缀来标记键 此外 地址表具有多个外键
  • 无法在docker上安装jenkins的建议插件

    我已经通过docker启动了jenkins 它已经以管理员模式启动 输入密码后 当我选择安装建议的插件时 大部分安装都会失败 发布当我创建 jenkins 用户并导航到 jenkins 主页时 它显示错误 如下面的屏幕截图所示 通过以下命令
  • 某些实体变量的 Spring Security

    是否可以使用 Spring Security 来安全更新某些实体属性 例如 如果我有一个用户实体 我希望 ROLE USER 能够修改 更新用户的所有属性 除了可由 ROLE ADMIN 更新的活动列之外 我还没有找到Spring Secu
  • 相对布局中的百分比宽度

    我正在研究登录的表单布局Activity在我的 Android 应用程序中 下图是我想要的样子 我能够通过以下方式实现此布局XML 问题是 这有点hackish 我必须对主机 EditText 的宽度进行硬编码 具体来说 我必须指定 and
  • 是否有创建 BPMN 的 Java API? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有没有办法以编程方式创建BPMN 2 0 http en wikipedia org wiki Business Process Mode
  • Symfony2 minify 无需 java 或 node

    我无法访问共享主机上的 java 或 node 有没有办法缩小服务器端 这样我就可以继续使用 assetic 而不需要这些引擎 Uglify 使用node yui compressor 无论如何已弃用 使用java Thanks 似乎有 2
  • 已安装的 gem 列表?

    我可以调用 Ruby 方法来获取已安装 gem 的列表吗 我想解析的输出gem list 有其他方法可以做到这一点吗 这列出了我安装的所有 gem gem query local http guides rubygems org comma
  • 如何使用 Moment.js 将日期验证为指定格式?

    我无法找到有关如何使用 moment js 验证日期输入以确保其格式为 2017 12 31T23 59 59Z 的现有问题 答案 鉴于我有一个日期字符串 2017 12 31T23 59 59Z 如何验证日期字符串严格采用指定的格式 YY
  • 如何使用sidenav的EventEmitter(onClose)

    我想检查一下我的
  • c# SSL TCPServer 卡在 SsLStream.AuthenticateAsServer()

    故事情节 我想用 C 创建我自己的网络服务器 第一次尝试 进展顺利 我正在使用Visual Studio 到代码申请和火狐浏览器检查如果我做得对的话 并且我成功地制作了一个基本的 TCPServer 当我尝试向其添加 SSL 支持时 遇到了
  • Symfony2 多个应用程序和以 api 为中心的应用程序

    我正在尝试做一个以 Symfony2 为中心的应用程序 并重新使用 Web 前端应用程序的所有捆绑包 该应用程序将分为三个API FrontEnd BackEnd 以便我们可以像Service Bundle一样编码API并在整个应用程序中使
  • 如何使用 Dart 和 Shelf 提供动态和静态页面?

    Using shelf static通过 Dart 提供静态网页是没有问题的 var staticHandler createStaticHandler staticPath defaultDocument home html io ser
  • Nodejs 分析:父级(切片字符串)

    我分析了我的 Nodejs 应用程序并看到一些奇怪的字符串 它被标记为父级 切片字符串 我使用 v8 profiler 和 node inspector 这是分析器屏幕的照片 抱歉是照片 不是屏幕截图 只是我的系统真的超载并且没有足够的空间
  • 如何从 PHP 调用 RESTful WCF 服务

    我正在尝试使用 PHP 中的 REST 向自托管 WCF 服务发送请求 我想将对象作为 JSON 对象发送到 WCF 服务 我还没有让它运行 有谁有如何从 PHP 调用服务的示例吗 这是操作合约 方法是POST方法 OperationCon
  • 如何使 CriteriaBuilder 加入自定义“开启”条件?

    我想使用 CriteriaBuilder 在连接 2 个表的位置进行查询 在 MySQL 中 我尝试进行的查询如下所示 SELECT FROM order LEFT JOIN item ON order id item order id A
  • Memorystream.Read() 始终返回 0 bytesRead 和空 byte[]

    我目前有一个内存流 http msdn microsoft com en us library System IO MemoryStream v vs 110 aspx长度约为30000 Named memStream here 我希望这个