码迷,mamicode.com
首页 > 数据库 > 详细

将文件以二进制的形式保存到数据库中

时间:2014-07-31 12:24:46      阅读:413      评论:0      收藏:0      [点我收藏+]

标签:http   使用   os   文件   io   数据   cti   代码   

主要应用HttpPostedFile类的InputStream属性、Stream类的read方法和Byte数据类型。首先获取上传数据文件的名称、大小和类型,建立一个访问客户端上传文件的对象HttpPostedFile和一个数据流对象Stream,然后使用数据流Stream对象将上传文件以二进制形式的数据写入Byte类型的数组中,最后将二进制数据保存的数据库中。

代码:
try
        {
            if (this.FileUpload1.PostedFile.FileName != "")
            {
                string ImgPath = FileUpload1.PostedFile.FileName;
                string ImgName = ImgPath.Substring(ImgPath.LastIndexOf("\\") + 1);
                string ImgExtend = ImgPath.Substring(ImgPath.LastIndexOf(".") + 1);
                int FileLen = this.FileUpload1.PostedFile.ContentLength;
                Byte[] FileData = new Byte[FileLen];
                HttpPostedFile hp = FileUpload1.PostedFile;//创建访问客户端上传文件的对象
                Stream sr = hp.InputStream;//创建数据流对象
                sr.Read(FileData, 0, FileLen);
                SqlConnection con = new SqlConnection("server=(local);user id=sa;pwd=sa;database=data");
                con.Open();
                SqlCommand com = new SqlCommand("INSERT INTO table (name) VALUES (@imgdata)", con);
                com.Parameters.Add("@imgdata", SqlDbType.Image);
                com.Parameters["@imgdata"].Value = FileData;
                com.ExecuteNonQuery();
                Label3.Text = "保存成功!";
            }
            else
            {
                Label3.Text = "请选择文件!";
            }
        }
        catch (Exception error)
        {
            Label3.Text = "处理失败!原因为:" + error.ToString();
        }

将文件以二进制的形式保存到数据库中,布布扣,bubuko.com

将文件以二进制的形式保存到数据库中

标签:http   使用   os   文件   io   数据   cti   代码   

原文地址:http://www.cnblogs.com/lschenblog/p/3880231.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!