using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.IO;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace 文件存取图片
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//定义缓冲区
byte[] b;
private void btnAddPhoto_Click(object sender, EventArgs e)
{
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
txtPath.Text = openFileDialog1.FileName;
}
FileStream fs = new FileStream(txtPath.Text, FileMode.Open, FileAccess.Read);
b = new byte[fs.Length];
fs.Read(b, 0, b.Length);
Stream s = new MemoryStream(b,0,b.Length);
pictureBox1.Image = Image.FromStream(s);
}
private void btnOK_Click(object sender, EventArgs e)
{
//构造文件名
int start =txtPath.Text.LastIndexOf(".");
int length = txtPath.Text.Length-start;
string ext = txtPath.Text.Substring(start, length);
string path = txtPath.Text.Substring(0, txtPath.Text.LastIndexOf("//"));
string filename = DateTime.Now.ToString() + DateTime.Now.Millisecond.ToString();
filename = filename.Replace(":", "").Replace(" ","").Replace("-","");
string file = Application.StartupPath + "[url=file:images//]//images//[/url]" + filename+ ext;
//保存到文件
FileStream fs = new FileStream(file, FileMode.Create, FileAccess.Write);
fs.Write(b, 0, b.Length);
fs.Close();
SqlConnection con = new SqlConnection("server=.;database=pubs;uid=sa;pwd=123456");
string sql = "insert into userinfo values(@userName,@PhotoPath)";
SqlCommand cmd = new SqlCommand(sql, con);
cmd.Parameters.Add("@userName",SqlDbType.VarChar,50);
cmd.Parameters[0].Value = txtUserName.Text;
cmd.Parameters.Add("@PhotoPath", SqlDbType.VarChar,200);
cmd.Parameters["@PhotoPath"].Value = file;
con.Open();
cmd.ExecuteNonQuery();
con.Close();
MessageBox.Show("添加完毕");
}
private void btnGet_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection("server=.;database=pubs;uid=sa;pwd=123456");
string sql = "select * from userinfo where username [email==@username]=@username[/email]";
SqlCommand cmd = new SqlCommand(sql, con);
cmd.Parameters.Add("@username",SqlDbType.VarChar,50);
cmd.Parameters[0].Value = txtGetName.Text;
con.Open();
SqlDataReader dr = cmd.ExecuteReader();
if(!dr.HasRows)
{
MessageBox.Show("不存在该用户");
dr.Close();
con.Close();
return;
}
dr.Read();//游标下移
string path = dr["PhotoPath"].ToString();
FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read);
byte[] photo = new byte[fs.Length];
fs.Read(photo, 0, photo.Length);
Stream s = new MemoryStream(photo);
pictureBox2.Image = Image.FromStream(s);
con.Close();
MessageBox.Show("读取完毕");
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
}