C# 图片转二进制/字符串 二进制/字符串反转成图片
2018-07-20 来源:open-open
protected void Button1_Click(object sender, EventArgs e) { //图片转二进制 byte[] imageByte = GetPictureData(Server.MapPath("./uploadfile/111.png")); //二进制转换成字符串 string picStr = Convert.ToBase64String(imageByte); //输出字符串 Response.Write(picStr); //字符串转二进制 byte[] imageBytes = Convert.FromBase64String(picStr); //读入MemoryStream对象 MemoryStream memoryStream = new MemoryStream(imageBytes, 0, imageBytes.Length); memoryStream.Write(imageBytes, 0, imageBytes.Length); //二进制转成图片保存 System.Drawing.Image image = System.Drawing.Image.FromStream(memoryStream); image.Save(Server.MapPath("./uploadfile/222.png")); } /// <summary> /// 二进制流转图片 /// </summary> /// <param name="streamByte">二进制流</param> /// <returns>图片</returns> public System.Drawing.Image ReturnPhoto(byte[] streamByte) { System.IO.MemoryStream ms = new System.IO.MemoryStream(streamByte); System.Drawing.Image img = System.Drawing.Image.FromStream(ms); return img; } /// <summary> /// 图片转二进制 /// </summary> /// <param name="imagepath">图片地址</param> /// <returns>二进制</returns> public byte[] GetPictureData(string imagepath) { //根据图片文件的路径使用文件流打开,并保存为byte[] FileStream fs = new FileStream(imagepath, FileMode.Open);//可以是其他重载方法 byte[] byData = new byte[fs.Length]; fs.Read(byData, 0, byData.Length); fs.Close(); return byData; } /// <summary> /// 图片转二进制 /// </summary> /// <param name="imgPhoto">图片对象</param> /// <returns>二进制</returns> public byte[] PhotoImageInsert(System.Drawing.Image imgPhoto) { //将Image转换成流数据,并保存为byte[] MemoryStream mstream = new MemoryStream(); imgPhoto.Save(mstream, System.Drawing.Imaging.ImageFormat.Bmp); byte[] byData = new Byte[mstream.Length]; mstream.Position = 0; mstream.Read(byData, 0, byData.Length); mstream.Close(); return byData; }
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。
上一篇:iPhone判断设备当前的方向
下一篇:Python分段下载文件
最新资讯
热门推荐