在C#中
图片到byte[]再到base64string的转换:
代码如下 | 复制代码 |
Bitmap bmp =newBitmap(filepath); MemoryStream ms =newMemoryStream(); bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Gif); byte[] arr =newbyte[ms.Length]; ms.Position = 0; ms.Read(arr, 0, (int)ms.Length); ms.Close(); string pic = Convert.ToBase64String(arr); |
base64string到byte[]再到图片的转换:
代码如下 | 复制代码 |
byte[] imageBytes = Convert.FromBase64String(pic); //读入MemoryStream对象 MemoryStream memoryStream =newMemoryStream(imageBytes, 0, imageBytes.Length); memoryStream.Write(imageBytes, 0, imageBytes.Length); //转成图片 Image image = Image.FromStream(memoryStream); |
现在的数据库开发中:图片的存放方式一般有CLOB:存放base64string
BLOB:存放byte[]
一般推荐使用byte[]。因为图片可以直接转换为byte[]存放到数据库中
若使用base64string 还需要从byte[]转换成base64string 。更浪费性能。