"景先生毕设|www.jxszl.com

文件与byte[]二进制流相互转换C#代码

2023-12-15 14:39编辑: www.jxszl.com景先生毕设
文件与byte[]二进制流相互转换C#代码

       //  方法一:文件转换成byte[] 二进制流
        public static byte[] ReadFile(string path)
        {
            bool flag = File.Exists(path);
            byte[] result;
            if (flag)
            {
                FileStream fileStream = null;
                BinaryReader binaryReader = null;
                byte[] array = null;
                try
                {
                    fileStream = new FileStream(path, FileMode.Open, FileAccess.Read);
                    binaryReader = new BinaryReader(fileStream);
                    array = new byte[binaryReader.BaseStream.Length];
                    binaryReader.Read(array, 0, (int)binaryReader.BaseStream.Length);
                }
                catch (Exception exception)
                {
                    LogUtils.ExceptionLog("public static byte[] ReadFile(string path)", exception);
                }
                finally
                {
                    bool flag2 = fileStream != null;
                    if (flag2)
                    {
                        fileStream.Close();
                        fileStream.Dispose();
                    }
                    bool flag3 = binaryReader != null;
                    if (flag3)
                    {
                        binaryReader.Close();
                    }
                    fileStream = null;
                    binaryReader = null;
                }
                result = array;
            }
            else
            {
                result = null;
            }
            return result;
        }

        // 方法二:二进制流byte[]转换成文件
        public static void SaveFile(byte[] bytes, string path)
        {
            FileStream fileStream = null;
            BinaryWriter binaryWriter = null;
            try
            {
                fileStream = new FileStream(path, FileMode.Create, FileAccess.Write);
                binaryWriter = new BinaryWriter(fileStream);
                binaryWriter.Write(bytes);
            }
            catch (Exception exception)
            {
                LogUtils.ExceptionLog("public static void SaveFile(byte[] bytes, string path)", exception);
            }
            finally
            {
                bool flag = fileStream != null;
                if (flag)
                {
                    fileStream.Close();
                    fileStream.Dispose();
                }
                bool flag2 = binaryWriter != null;
                if (flag2)
                {
                    binaryWriter.Close();
                }
                fileStream = null;
                binaryWriter = null;
            }
        }


原文链接:http://www.jxszl.com/biancheng/C/556432.html