在C#中将大文件读入字节数组的最佳方法?

托尼·亨里奇

我有一个Web服务器,它将大的二进制文件(几兆字节)读入字节数组。服务器可能同时读取多个文件(不同的页面请求),因此我正在寻找最优化的方式来做到这一点,而又不会给CPU带来太多负担。下面的代码足够好吗?

public byte[] FileToByteArray(string fileName)
{
    byte[] buff = null;
    FileStream fs = new FileStream(fileName, 
                                   FileMode.Open, 
                                   FileAccess.Read);
    BinaryReader br = new BinaryReader(fs);
    long numBytes = new FileInfo(fileName).Length;
    buff = br.ReadBytes((int) numBytes);
    return buff;
}
迈尔达·阿夫沙里(Mehrdad Afshari)

只需将整个内容替换为:

return File.ReadAllBytes(fileName);

但是,如果您担心内存消耗,你应该不会一下子在所有读取整个文件到内存中。您应该分块进行。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Java中将字节数组写入文件?

在发布请求之前将字节数组转换为C#字节数组

在C#中组合两个或多个字节数组的最佳方法

在C#中将对象列表转换为字节数组

如何在C#中将字节数组转换为图像?

在C#中将MAC地址转换为字节数组

从C ++到C#的pinvoke字节数组

从C ++ DLL返回字节数组到C#

将大文件读入字节数组并将其编码为ToBase64String

如何在C#中将标记的src设置为字节数组中的pdf内容

如何在字节数组C#中将随机长度的字符串变成

Kotlin从文件读入字节数组

如何在C#中将字节数组的子范围转换为字符串

在C / C ++中以字节数组读写文件

在C#中将字节数组转换为十六进制

从字节数组C#中读取特定的字节

AS3字节数组到C#字节数组

Python / C#,将文件读入字节数组-结果不一样

如何在C#中将字节数组或字符串作为文件http发布

如何在C#中将字节数组转换为zip存档?

将大文件作为拆分的zip文件,流或字节数组WCF返回的最佳方法

合并 2 字节数组的最佳方法是什么?

c#用字节数组输入生成crc8字节方法

在 C# 中将十六进制字符串转换为字节数组

字节数组属性 C#

如何在c#中将浮点数组转换为字节数组?

仅使用所需字符解析字节数组的最佳方法 c#

在python中将字节数组写入文件时出错

有没有一种简单的方法可以在 C# 中将 ListArray 转换为字节数组?