如何在 C# 中将视频转换为字节数组?

2024-02-11

我正在使用 c# .net 紧凑框架 3.5,我想将视频文件转换为字节数组,以便我可以将其上传到服务器上。

以类似的方式,我正在进行图像上传,获得了成功的结果。

HttpWebRequest request; 
request.ContentType = "image/jpeg";
request.ContentLength = byteArray.Length;
request.Method = "PUT";

imageToByteArray(img).CopyTo(byteArray, 0);
using (Stream requestStream = request.GetRequestStream())
{
  requestStream.Write(byteArray, 0, (int)Fs.Length);
  requestStream.Flush();
  requestStream.Close();
}


public byte[] imageToByteArray(Image imageIn)
{
  MemoryStream ms = new MemoryStream();
  imageIn.Save(ms,System.Drawing.Imaging.ImageFormat.Jpeg);
  return ms.ToArray();
}

如何对视频文件执行此操作?


您应该一次复制一个数据块,而不是将整个文件读入数组。否则,您可能会使用大量内存,因为视频文件可能会变得很大。

例如:

HttpWebRequest request; 
request.Method = "PUT";

using(Stream requestStream = request.GetRequestStream())
using(Stream video = File.OpenRead("Path")) {
    byte[] buffer = new byte[4096];

    while(true) {
        int bytesRead = video.Read(buffer, 0, buffer.Length);

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

如何在 C# 中将视频转换为字节数组? 的相关文章

随机推荐

  • 为什么 ValidateAntiForgeryTokenAttribute 允许匿名令牌?

    在 ASP NET MVC 中 ValidateAntiForgeryTokenAttribute 调用的验证逻辑允许匿名防伪令牌 即没有任何用户特定信息 例如 IIdentity Name 或 ClaimUid 的令牌 因此 如果未使用声
  • 从 Properties 获取 int、float、boolean 和 string

    我有属性文件中的 int float boolean 和 string 一切都已加载到属性中 目前 我正在解析值 因为我知道特定键的预期值 Boolean parseBoolean false Integer parseInt 3 如果我不
  • X++ 中的“this”与“element”关键字

    在 X 中编写代码时有时需要引用this functionYouWant 有时是element FunctionYouWant 有时两者都在范围内 我经常尝试其中一种 如果没有我想要的功能 我会尝试另一种 是否有规则解释何时使用this以及
  • yeoman 在桌面中创建项目,即使我 CD 进入目录

    I am having a issue creating a yeoman project I cd in the directory type yo and it says Here is it suppose to asked me p
  • 如何在 SAPI 5.4 C# 程序中加载文本语法?

    我一直在 SAPI 5 4 中使用 SRGS 语法来定义命令和控制语法 现在我想切换到文本语法 以便它们与 SAPI 5 1 甚至可能是 SAPI 4 兼容 我找到了一个例子SAPI 5 4 兼容文本语法在这里 http msdn micr
  • 用于提取 TwitPic 链接/代码(如果存在)的 PHP 正则表达式

    我希望能够检查文本字符串并提取 TwitPic URL 如果它存在于字符串中 最终我只想要代码部分 但两者都可以 Example blah blah blah http twitpic com 1aso4q blah blah 期望的结果
  • 库链接

    我正在尝试使用 Zed Shaw 的 Learn C the Hard way 来学习 C 编程 我一直在 ex26 上工作 我们创建了一个用于安装软件的程序 devpkg 此练习需要安装 Apache Portable Runtime 库
  • 无序元组类型

    我只是在深入研究 Typescript 类型 我想知道如何定义一个元组类型 但具有无序元素类型 我的意思是 有 type SimpleTuple number string const tup1 SimpleTuple 7 7 Valid
  • 调用 Math.random() 的函数是纯函数吗?

    以下是纯函数吗 function test min max return Math random max min min 我的理解是纯函数遵循以下条件 它返回一个根据参数计算得出的值 除了计算返回值之外 它不做任何工作 如果这个定义是正确的
  • 如何在 Jersey/Spring 中使用 @QueryParam 重载方法?

    我想使用 QueryParam 重载一个方法 但每次我尝试执行此代码时 它都会抛出 SEVERE Exception occurred when intialization com sun jersey spi inject Errors
  • Matplotlib,绘图上的对数色标,但颜色条图例上的线性色标

    我想以对数比例绘制 我已经使用以下方法完成了 plt contourf cube 0 data levels np arange 0 6000 10 norm mplc LogNorm 但我希望颜色条仍然是线性比例 这可能吗 如果可以的话我
  • Server.MapPath 并从 ASP.NET 应用程序运行命令行实用程序

    我需要使用 ASP NET 应用程序运行可执行文件Process exe 文件位于 ASP NET 项目内 ProjectRoot Utilities utility exe 为什么这段代码运行失败 string path Server M
  • 使用路径相关类型作为类参数

    我想要一个类 它采用依赖于类的类型的参数 就像我经常对方法所做的那样 然而 令我惊讶的是 这不起作用 scala gt trait Compiler trait Config defined trait Compiler works fin
  • 如何使用 JWT 令牌管理多设备同时登录?

    我的疑问是关于使用 JWT 令牌支持同一用户同时进行多设备登录 我使用 NestJS 作为我的后端 用户表 userid 用户名 密码 包含哈希密码 名称 refreshToken 包含哈希刷新令牌 当用户执行 api login 调用时
  • HOC 上的组件定义缺少显示名称

    我正在尝试创建一个更高阶的组件 但不断收到此 eslint 警告 组件定义缺少显示名称 我尝试添加如下所示的显示名称 但它仍然抱怨 import React from react const HOC props gt WC gt WC di
  • 以编程方式更改 Android 中矢量的 fillColor

    我想以编程方式编辑 Android 中矢量文件的填充颜色 在 xml 文件中 我可以使用属性设置颜色机器人 填充颜色但我想在运行时改变颜色 有什么例子吗 谢谢 This https medium com emmaguy dynamicall
  • 尝试使用 imagecreatefromstring 保存 base64 图像,但它是全黑的

    我正在尝试从数据库中获取 Base64 编码图像并将其保存到文件中 无论出于何种原因 当我尝试使用 imagecreatefromstring 和 imagepng 时 图像完全是黑色的 我尝试了很多不同的方法 但最终还是得到了一个黑匣子
  • msbuild复制文件

    我在使用 MSbuild 复制文件时遇到问题 并且收到的错误消息似乎相互矛盾 使用 TFS 2008 进行构建 我目前的构建脚本中有以下内容
  • EL 表达式:传递 null 作为 BigDecimal 字段的值

    我有课BigDecimal财产 当我绑定到它 EL 表达式并传递 null 时 valueExpression set context null 财产的新价值变为BigDecimal ZERO 有什么方法可以将 null 传递给BigDec
  • 如何在 C# 中将视频转换为字节数组?

    我正在使用 c net 紧凑框架 3 5 我想将视频文件转换为字节数组 以便我可以将其上传到服务器上 以类似的方式 我正在进行图像上传 获得了成功的结果 HttpWebRequest request request ContentType