c# | base64图片转文件

2021-05-15 23:27

阅读:519

标签:class   load   sub   博文   mod   方法   参考   log   tac   

方法如下:

        public string Base64StringToFile(string base64String, string fileName)
        {
            //文件后缀
            string suffix = "";
            try
            {
                //文件保存路径
                string fileFullPath = @"C:\Users\wenjingzhi\Desktop\MyBlog\UploadPictures";
                //如果没有文件夹,则创建
                if (!Directory.Exists(fileFullPath))
                {
                    Directory.CreateDirectory(fileFullPath);
                }
                //获取文件后缀
                string i = base64String.Trim().Substring(0, base64String.IndexOf(",") + 1);
                suffix = i.Substring(i.IndexOf("/") + 1, i.IndexOf(";") - i.IndexOf("/") - 1);
                //将,以前的多余字符串删除
                string strbase64 = base64String.Trim().Substring(base64String.IndexOf(",") + 1);
                //将指定的字符串(它将二进制数据编码为 Base64 数字)转换为等效的 8 位无符号整数数组
                MemoryStream stream = new MemoryStream(Convert.FromBase64String(strbase64));
                //文件读写
                FileStream fs = new FileStream(fileFullPath + "\\" + fileName + "." + suffix, FileMode.OpenOrCreate, FileAccess.Write);
                //将流写入数组
                byte[] b = stream.ToArray();
                fs.Write(b, 0, b.Length);
                fs.Close();
            }
            catch (Exception e)
            {
                System.Diagnostics.Trace.WriteLine("异常类型: \t" + e.GetType());
                System.Diagnostics.Trace.WriteLine("异常描述:\t" + e.Message);
                System.Diagnostics.Trace.WriteLine("异常方法:\t" + e.TargetSite);
                System.Diagnostics.Trace.WriteLine("异常堆栈:\t" + e.StackTrace);
            }
            return fileName + "." + suffix;
        }

这是很久以前参考别人并稍微修改了一点,博文地址忘了,如果有知道的原博文的,可以提醒我一下,我会加上原博文地址的

c# | base64图片转文件

标签:class   load   sub   博文   mod   方法   参考   log   tac   

原文地址:https://www.cnblogs.com/wjzjy/p/14668170.html


评论


亲,登录后才可以留言!