照片的保存与读取

     /// <summary>
/// 图片转二进制
/// </summary>
/// <param name="imgPhoto">图片对象</param>
/// <returns>二进制</returns>
public static byte[] PhotoImageInsert(System.Drawing.Image imgPhoto)
{
//将Image转换成流数据,并保存为byte[]
MemoryStream mstream = new MemoryStream();
imgPhoto.Save(mstream, System.Drawing.Imaging.ImageFormat.Jpeg);
byte[] byData = new Byte[mstream.Length];
mstream.Position = ;
mstream.Read(byData, , byData.Length);
mstream.Close();
return byData;
}     

    调用这个方法把普通转为2进制,并把它转成 Base64 形式的 System.String
    string s = Convert.ToBase64String(PhotoImageInsert(PictureBox.Image))
    转完之后,剩下的就是保存到数据库了,这个就是普通的Insert了,倒是要注意字段的长度


    读取图片并显示出来:
    如何读取的代码我就不写了,相信大家肯定是没问题的。
    //字符串转二进制
    byte[] imageBytes = Convert.FromBase64String(dt.Rows[0]["img_pic"].ToString());
    MemoryStream ms = new MemoryStream(imageBytes);
    Bitmap bmpt = new Bitmap(ms);
    PictureBox.Image = bmpt;

图片另存

       SaveFileDialog.Title = "附件另存";
SaveFileDialog.Filter = "jpg图片|*.JPG|gif图片|*.GIF|png图片|*.PNG|jpeg图片|*.JPEG";
SaveFileDialog.FilterIndex = ;//设置默认文件类型显示顺序
SaveFileDialog.RestoreDirectory = true; //点了保存按钮进入if (picBox1.Image != null)
{
if (SaveFileDialog.ShowDialog() == DialogResult.OK)
{
string pictureName = SaveFileDialog.FileName;
//照片另存
using (MemoryStream mem = new MemoryStream())
{
//这句很重要,不然不能正确保存图片或出错(关键就这一句)
Bitmap bmp = new Bitmap(picBox1.Image);
//保存到磁盘文件
bmp.Save(@pictureName, PictureBox.Image.RawFormat);
bmp.Dispose();
MessageBox.Show("附件另存成功!", "注意", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
}
else
{
MessageBoxEx.Show("没有附件信息!", "注意", MessageBoxButtons.OK, MessageBoxIcon.Information);
}

C#图片保存与读取,以及图片另存的更多相关文章

  1. PHP把图片保存到数据库,将图片本身保存在数据库,而非保存路径

    备注 百度开发者的云代码空间为了保证高可用,不允许用户将图片保存到代码空间中,使用CDN或者对象存储不仅收费而且使用比较复杂,于是考虑能否将img存储在数据库中,虽然很多人说会造成性能问题,权当一试 ...

  2. java后台中处理图片辅助类汇总(上传图片到服务器,从服务器下载图片保存到本地,缩放图片,copy图片,往图片添加水印图片或者文字,生成二维码,删除图片等)

    最近工作中处理小程序宝箱活动,需要java画海报,所以把这块都快百度遍了,记录一下处理的方法,百度博客上面也有不少坑! 获取本地图片路径: String bgPath = Thread.current ...

  3. C# 图片保存到数据库和从数据库读取图片并显示

    图片保存到数据库的方法: public void imgToDB(string sql)        {   //参数sql中要求保存的imge变量名称为@images            //调 ...

  4. //NSUserDeafult 图片的保存与读取

    //NSUserDeafult保存图片数据到本地 -(void)saveImage:(UIImage *)image{ NSData* data=[NSKeyedArchiver archivedDa ...

  5. 常用的图片相关方法,读取,保存,压缩,缩放,旋转,drawable转化

    import android.content.Context; import android.content.res.AssetManager; import android.content.res. ...

  6. WP开发图片保存到独立存储并从独立存储中读取

    需要添加引用命名空间 using System.IO; using System.IO.IsolatedStorage; 1.将图片保存到独立存储空间 using (IsolatedStorageFi ...

  7. 机器学习进阶-图像基本操作-图像数据读取 1.cv2.imread(图片读入) 2.cv2.imshow(图片展示) 3.cv2.waitKey(图片停留的时间) 4.cv2.destroyAllWindows(清除所有的方框界面) 5.cv2.imwrite(对图片进行保存)

    1. cv2.imread('cat.jpg', cv2.IMGREAD_GRAYSCALE)  # 使用imread读入图像(BGR顺序), 使用IMGREAD_GRAYSCALE 使得读入的图片为 ...

  8. 图片保存到数据库以及C#读取图片

    图片保存到数据库,如果是sqlserver就是Image类型,如果保存到Oracle就是blob类型,在c#中相对应的就是byte[]类型,同时只需要对读出的数据强制转换就行(byte[])objec ...

  9. 【matlab】用matlab 保存带标记图像、图片的方法总结

    最近看了一些用matlab对图形图片进行保存的帖子和资源,关于图像保存的方法给大家分享一下这些方法是大家所使用方法的一个总结. 如今常用的方法有三种printf,imwrite,saveas下面分别介 ...

随机推荐

  1. 【t055】成绩统计

    Time Limit: 1 second Memory Limit: 128 MB [问题描述] 华南师大附中月考二已经结束,级长想知道最高分是谁.但是现在级长很忙,没有时间统计成绩,于是他找到了你, ...

  2. Google Guava官方教程

    原文链接 译文链接 译者: 沈义扬,罗立树,何一昕,*武祖 * 校对:方腾飞 引言 Guava工程包含了若干被Google的 Java项目广泛依赖 的核心库,例如:集合 [collections] . ...

  3. while 常见程序逻辑

    1. 查找 List L; Position P = L; while (P && P->Element != Key) { P = P->Next; } return P ...

  4. 【22.73%】【codeforces 606D】Lazy Student

    time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...

  5. spring sts4 如何添加tomcat 服务

    spring sts4 ide中已经没有集成tomcat运行服务器了,需要到点击Help-->Eclipse Marketplace中安装 Eclipse JST Server Adapters ...

  6. android 流量统计

    1 android通过架构流量统计TrafficStats类可以直接获得     获得总流量受理TrafficStats.getTotalRxBytes(),     获得总传出流量TrafficSt ...

  7. imageNamed 与 imageWithContentsOfFile差额

    郝萌主倾心贡献,尊重作者的劳动成果,请勿转载. 假设文章对您有所帮助.欢迎给作者捐赠,支持郝萌主,捐赠数额任意.重在心意^_^ 我要捐赠: 点击捐赠 Cocos2d-X源代码下载:点我传送 普通情况下 ...

  8. [演示示例程序]Objective-C受委托的设计模式(牛仔女孩)

    今天整理电脑打开一次自我Objective-C当编写一个实践设计模式委托一个小程序,在po快来分享.也复习一下OC中的托付. Objective-C中的托付设计模式是和协议分不开的. 协议呢.就是使用 ...

  9. SpringMVC+easyUI 分页,查询 (完整的CRUD)

    最终完毕CRUD的功能了,注意,这里会对前面有一些修改,UserController的listUser() 已经改写了,如今把所有整理一下吧. JSP: <%@ page language=&q ...

  10. 编程算法 - 旋转矩阵 代码(C)

    旋转矩阵 代码(C) 本文地址: http://blog.csdn.net/caroline_wendy 输出旋转矩阵, 使矩阵是按对角线螺旋上升, 在输出规则确定以后, 就能够推断, 上升规律是, ...