图片二进制上传2

上传核心代码:

try

            {
             
                string ImgPath = FileUpload1.PostedFile.FileName;
                string ImgName = ImgPath.Substring(ImgPath.LastIndexOf("\\") + 1);
                string ImgExtend = ImgPath.Substring(ImgPath.LastIndexOf(".") + 1);
                if (!(ImgExtend == "bmp" || ImgExtend == "jpg" || ImgExtend == "gif"))
                {
                    Label1.Text = "上传图片的格式不正确!";
                    return;
                }
                int FileLen = this.FileUpload1.PostedFile.ContentLength;
                Byte[] FileData = new Byte[FileLen];
                HttpPostedFile hp = FileUpload1.PostedFile;//创建访问客户端上传文件的对象
                Stream sr = hp.InputStream;//创建数据流对象
                sr.Read(FileData, 0, FileLen);//将图片数据放到FileData数组对象实例中,其中0代表数组指针的起始位置,FileLen表示要读取流的长度(指针的结素位置)
               
                SqlConnection con = new SqlConnection(connstr);
                con.Open();
                SqlCommand com = new SqlCommand("INSERT INTO pictures (PicData,PicName,PicType) VALUES (@imgdata,@ImaName,@ImgExtend)", con);
                com.Parameters.Add("@imgdata", SqlDbType.Image);
                com.Parameters.Add("@ImaName", SqlDbType.VarChar);
                com.Parameters.Add("@ImgExtend",SqlDbType.VarChar);
                com.Parameters["@imgdata"].Value = FileData;//二进制文本
                com.Parameters["@ImaName"].Value = ImgName; //图片名
                com.Parameters["@ImgExtend"].Value = ImgExtend;//类型
                com.ExecuteNonQuery();
                Label1.Text = "保存成功!";


               
            }
            catch (Exception error)
            {
                Label1.Text = "处理失败!原因为:" + error.ToString();
            }

图片显示核心代码:

 protected void Page_Load(object sender, EventArgs e)
        {
            string imgid = Request.QueryString["imgid"];
            string connstr = System.Configuration.ConfigurationManager.ConnectionStrings["connstr"].ToString();

            string sql = "SELECT PicData,PicType FROM pictures WHERE PicId ="

            + imgid;

            SqlConnection connection = new SqlConnection(connstr);

            SqlCommand command = new SqlCommand(sql, connection);

            connection.Open();

            SqlDataReader dr = command.ExecuteReader();

            if (dr.Read())
            {

                Response.ContentType = dr["PicType"].ToString();

                Response.BinaryWrite((byte[])dr["PicData"]);

            }
            connection.Close();
        }

 
 
 
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值