天天看点

C#中byte[]数组的读取与写入文件

字节(Byte)是计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于八位,也表示一些计算机编程语言中的数据类型和语言字符。

C#中byte[]数组的读取与写入文件。

1、创建文件公共处理类(FileHelper.cs)

using System.IO;

/// <summary>
/// 文件公共处理类
/// </summary>
public static class FileHelper
{
    /// <summary>
    /// 将文件转换成byte[]数组
    /// </summary>
    /// <param name="fileUrl">文件路径文件名称</param>
    /// <returns>byte[]数组</returns>
    public static byte[] FileToByte(string fileUrl)
    {
        try
        {
            using (FileStream fs = new FileStream(fileUrl, FileMode.Open, FileAccess.Read))
            {
                byte[] byteArray = new byte[fs.Length];
                fs.Read(byteArray, 0, byteArray.Length);
                return byteArray;
            }
        }
        catch
        {
            return null;
        }
    }

    /// <summary>
    /// 将byte[]数组保存成文件
    /// </summary>
    /// <param name="byteArray">byte[]数组</param>
    /// <param name="fileName">保存至硬盘的文件路径</param>
    /// <returns></returns>
    public static bool ByteToFile(byte[] byteArray, string fileName)
    {
        bool result = false;
        try
        {
            using (FileStream fs = new FileStream(fileName, FileMode.OpenOrCreate, FileAccess.Write))
            {
                fs.Write(byteArray, 0, byteArray.Length);
                result = true;
            }
        }
        catch
        {
            result = false;
        }
        return result;
    }
}
           

2、测试

public static void FileTest()
{ 
    //本地文件路径
    string fileUrl = @"F:\Images\MyPic.JPG";

    //1、将文件转换成byte[]数组
    byte[] byteArray = FileHelper.FileToByte(fileUrl);

    //2、将byte[]数组保存成文件
    string fileName = @"F:\Images\MyPic_2.JPG";
    bool saveRet = FileHelper.ByteToFile(byteArray, fileName);
}
           

继续阅读