C#:将图片文件上传到数据库两种方法。

方法1:

将图片复制到指定文件夹,在数据库中存储图片路径,通过读取路径来显示图片。

string str;
        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                str = openFileDialog1.FileName;
                pictureBox1.Image = Image.FromFile(str);
            }
        }//打开文件并在PictureBox中显示图片

        private void toolStripButton2_Click(object sender, EventArgs e)
        {
            string filename = DateTime.Now.Ticks.ToString();//时间戳,保证图片名称不重复
            string name = @"F:\数据库作业\外卖\外卖\外卖\bin\Debug\image\" + filename;
            File.Copy(str, name);//将图片复制到指定文件夹
            _users.Domain(name);//利用SQL将文件路径上传至数据库
        }
        private void toolStripButton3_Click(object sender, EventArgs e)
        {
            var info = _users.SelectDomain();//SQL查询路径
            pictureBox1.Image = Image.FromFile(info.Rows[0][0].ToString());//显示照片
            this.pictureBox1.Refresh();
        }

方法2:

将图片读成二进制后上传至数据库,再将二进制数据转化成图片。

string str;
        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                str = openFileDialog1.FileName;
                pictureBox1.Image = Image.FromFile(str);
            }

        }//打开文件并在PictureBox中显示图片

        private void toolStripButton2_Click(object sender, EventArgs e)
        {
            FileStream fs = new FileStream(str, FileMode.Open, FileAccess.Read);
            BinaryReader br = new BinaryReader(fs);
            byte[] imgBytesIn = br.ReadBytes(Convert.ToInt32(fs.Length));//转成二进制数据的操作
            _users.Domain(imgBytesIn);
        }

        private void toolStripButton3_Click(object sender, EventArgs e)
        {
            var table = _users.SelectDomain();
            byte[] imagedata = (byte[])(table.Rows[0][0]);
            MemoryStream myStream = new MemoryStream(imagedata);//转成图片
            pictureBox1.Image = Image.FromStream(myStream);//显示图片
        }

    }

图片自适应picturebox用Sizemode-Stretchimage(PictureBox属性修改)。

时间: 2024-10-09 05:11:27

C#:将图片文件上传到数据库两种方法。的相关文章

js的FileReader实现图片文件上传、预览

js的FileReader实现图片文件上传.预览 FileReader对象的readAsDataURL方法可以将读取到的文件编码成Data URL.Data URL是一项特殊的技术,可以将资料(例如图片)内嵌在网页之中,不用放到外部文件.使用Data URL的好处是,您不需要额外再发出一个HTTP 请求到服务器端取得额外的资料:而缺点便是,网页的大小可能会变大.它适合应用在内嵌小图片,不建议将大图像文件编码成Data URL来使用.您的图像文件不能够超过浏览器限定的大小,否则无法读取图像文件.1

.Net Core 图片文件上传下载

当下.Net Core项目可是如雨后春笋一般发展起来,作为.Net大军中的一员,我热忱地拥抱了.Net Core并且积极使用其进行业务的开发,我们先介绍下.Net Core项目下实现文件上传下载接口. 一.开发环境 毋庸置疑,宇宙第一IDE VisualStudio 2017 二.项目结构 FilesController 文件上传下载控制器 PictureController 图片上传下载控制器 Return_Helper_DG 返回值帮助类 三.关键代码 1.首先我们来看Startup.cs

利用Selenium实现图片文件上传的两种方式介绍

在实现UI自动化测试过程中,有一类需求是实现图片上传,这种需求根据开发的实现方式,UI的实现方式也会不同. 一.直接利用Selenium实现 这种方式是最简单的一种实现方式,但是依赖于开发的实现. 当开发直接使用file类型的input实现图片文件的上传时,实例:<input type="file" name=''filename"> 我们可以直接利用Selenium提供的方法实现文件上传,但是因为依赖开发的实现,而且目前实现基本都会利用框架,所以这种实现方式有很

如何自学Struts2之Struts2文件上传和数据库访问[视频]

如何自学Struts2之Struts2文件上传和数据库访问[视频] 之前写了一篇"打算做一个视频教程探讨如何自学计算机相关的技术",优酷上传不了,只好传到百度云上: http://pan.baidu.com/s/1kTDsa95 由于上次视频没有声音,所以在这节课"Struts2数据库访问"一起再讲一下.

SpringMvc MultipartFile 图片文件上传

spring-servlet.xml 1 <!-- SpringMVC上传文件时,需要配置MultipartResolver处理器 --> 2 <bean id="multipartResolver" 3 class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> 4 <property name="defaultEncoding&qu

Android图片文件上传实例

原文:Android图片文件上传实例 源代码下载地址:http://www.zuidaima.com/share/1550463718132736.htm 支持拍照图片上传和从手机相册中获取图片上传到服务器端的功能 源码截图

jQuery插件AjaxFileUpload实现ajax文件上传时老是执行error方法 问题原因

今天在用jQuery插件AjaxFileUpload实现ajax文件上传时,遇到一个问题,如图: 老是执行error,无法执行succes方法,追踪ajaxfileupload.js源码发现: 当执行if(type=="json")    eval("data = "+data);会抛出异常,导致在处理异常的时候将status = "error" 因此一直执行error方法. 上网查询,得知eval函数是用来执行一段js代码,而并不是如我所想的反

ASP 连接 MySQL 数据库两种方法

一般都是用myodbc来连接.首先,在系统中安装 Mysql 的ODBC数据库驱动.如安装稳定版本是3.51.下载地址是:http://dev.mysql.com/downloads/connector/odbc/3.51.html. 下载安装好后.在控制面板-->管理工具-->数据源 (ODBC)中的“驱动程序”页中如果有MySQL ODBC 3.51 Driver就说明驱动已经安装成功,就可以开始写程序了. 下面是我测试时使用的程序,里面有说明就不再介绍了. 方法一: <% '设置M

图片文件上传

一.文件上传条件: 1.依赖表单,请求方式为post, enctype="multipart/form-data" 2.表单中有file类型的input 二.提交文件上传的表单,不需要页面跳转,用jquery.form.js插件.以ajax方式提交表单 1 function submitUpload(){ 2 var option = { 3 url:path+"/upload/uploadPic.do",//上传的url 4 dataType:"text