多个图片转换成base64编码方法

  //图片转为base64编码的字符串
        [AuthenticatedFilter]
        protected string ImgToBase64String(string Imagefilename, string imageType)
        {
            using (System.IO.FileStream fs = System.IO.File.OpenRead(Imagefilename))
            {
                try
                {
                    System.IO.BinaryReader br = new BinaryReader(fs);
                    byte[] bt = br.ReadBytes(Convert.ToInt32(fs.Length));
                    string base64String = Convert.ToBase64String(bt);
                    br.Close();
                    fs.Close();
                    return base64String;
                }
                catch (Exception ex)
                {
                    return null;
                }
            }

        }

//在保存时间里循环调用方法

  //1. 获取当前系统附件物理路径
                var uploadPath = Server.MapPath("~/upload");
                //2. 字符串变量用于接收多个附件
                //var filePahts = string.Empty;
                var filesInfo = string.Empty;
                //3. 循环拆分前台上传附件的文件全名(包含类型)
                foreach (var tmItem in AnnexName.Split(','))
                {
                    //循环拼接附件路径,以逗号间隔
                    ///filePahts += Path.Combine(uploadPath, tmItem)+",";
                    var thisPath = Path.Combine(uploadPath, tmItem);
                    //获取附件base64字符串
                    var base64String = ImgToBase64String(thisPath, Annex);
                    filesInfo += base64String+",";
                }
                //去掉循环中最后一个逗号,避免后续调用没有做非空验证而导致的异常
                if (!string.IsNullOrEmpty(filesInfo)) filesInfo = filesInfo.Substring(0, filesInfo.Length - 1);

你可能感兴趣的:(多个图片转换成base64编码方法)