博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
图片上传读取代码
阅读量:7212 次
发布时间:2019-06-29

本文共 1811 字,大约阅读时间需要 6 分钟。

using System;

using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Data.SqlClient;

namespace XuanKeForm

{
public partial class FormImage : Form
{
public FormImage()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)

{
openFileDialog1.Filter = "*jpg|*.jpg|*bmp|*.bmp|*gif|*.gif";
DialogResult dia = openFileDialog1.ShowDialog();
if (dia == DialogResult.OK)
{
string filename = openFileDialog1.FileName;

FileStream fs = new FileStream(filename,FileMode.Open,FileAccess.Read);//将图片读入流中

byte[] imagebytes = new byte[fs.Length];//二进制数组,用以临时存储图像的二进制编码
BinaryReader br = new BinaryReader(fs);//二进制读取器
imagebytes = br.ReadBytes(Convert.ToInt32(fs.Length));//将图片读入到二进制数组中

//开始连接数据库存入数据库中
SqlConnection conn = new SqlConnection("server=.;database=schoolData;user=sa;pwd=");
conn.Open();
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = "insert into tutable values(@image)";
cmd.Parameters.Clear();
cmd.Parameters.Add("@image",imagebytes);
cmd.ExecuteNonQuery();
conn.Close();
MessageBox.Show("图片上传成功");

}

}

//读取

private void button2_Click(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection("server=.;database=schoolData;user=sa;pwd=");
conn.Open();
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = "select top 1 *from tutable";
SqlDataReader dr = cmd.ExecuteReader();
dr.Read();
byte[] imgbytes = (byte[])dr["tuxiang"];
//将图像写入内存
MemoryStream ms = new MemoryStream(imgbytes, 0, imgbytes.Length);
ms.Write(imgbytes, 0, imgbytes.Length);

Image img = Image.FromStream(ms);

this.pictureBox1.SizeMode = PictureBoxSizeMode.Zoom;
this.pictureBox1.Image = img;
}
}
}

转载于:https://www.cnblogs.com/mxx0426/p/4298674.html

你可能感兴趣的文章
技术宅---我的网上抢火车票攻略
查看>>
爱上MVC~业务层刻意抛出异常,全局异常的捕获它并按格式返回
查看>>
R+Hadoop大数据方案有哪些坑?
查看>>
架构,改善程序复用性的设计~第五讲 复用离不开反射和IOC
查看>>
Android 使用dagger2进行依赖注入(基础篇)
查看>>
一个游戏
查看>>
如何让帝国CMS7.2搜索模板支持动态标签调用
查看>>
公众号和小程序可以同名了 名称支持同主体复用
查看>>
96.2. Yum 安装
查看>>
[再寄小读者之数学篇](2015-06-08 一个有意思的定积分计算)
查看>>
搭建本地 Registry - 每天5分钟玩转 Docker 容器技术(20)
查看>>
logger异常日志要点总结
查看>>
chrony软件使用说明
查看>>
SetWindowHookEx 做消息响应
查看>>
数据库事务的四个隔离级别
查看>>
Elasticsearch——利用Parent-Child关系解决大数据场景下的实时查询
查看>>
pyMagic:用python控制的Geek入门神器
查看>>
ubuntu for win10 里运行apache+php
查看>>
在线 Python运行工具
查看>>
云上的数据安全,是企业互联网化发展的生命线!
查看>>