zoukankan      html  css  js  c++  java
  • 将数据库二进制图片导出显示到EPPlus Excel2007中

    1.EPPlus Excel 控件可以参考我的另一篇博客:http://blog.163.com/pei_huiping/blog/static/206573067201281810549984/

    这里我主要记录将二进制图片从数据库取出来,然后显示到Excel中。

    //导出Excel
            protected void Button3_Click(object sender, EventArgs e)
            {
                string constr = "Data Source=192.168.10.58; Initial Catalog=saveImagesDB; user ID=sa; password=123; pooling=true;";
                string sql = "select imageobj from T_image where id=" + txt_id.Value;
                SqlConnection conn = new SqlConnection(constr);
                SqlCommand com = new SqlCommand();
                com.Connection = conn;
                com.CommandType = CommandType.Text;
                com.CommandText = sql;
                conn.Open();
                SqlDataReader dr = com.ExecuteReader();
                byte[] bytes = null;
                if (dr.Read())
                {
                    bytes = (byte[])dr["imageobj"];
                }
                dr.Close();
                conn.Close();
                System.IO.MemoryStream ms = new System.IO.MemoryStream(bytes);
                System.Drawing.Bitmap myimge = new System.Drawing.Bitmap(ms);
                //this.Response.BinaryWrite(bytes);//打印到页面上
    
                OfficeOpenXml.ExcelPackage ep = new OfficeOpenXml.ExcelPackage();
                OfficeOpenXml.ExcelWorkbook wb = ep.Workbook;
                OfficeOpenXml.ExcelWorksheet ws = wb.Worksheets.Add("我的工作表");
                ws.Drawings.AddPicture("", myimge);
               // ws.Cells[1, 1].Value = pic;
                //写到客户端(下载)
                Response.Clear();
                Response.AddHeader("content-disposition", "attachment;  filename=FileFlow.xls");
                Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
                Response.BinaryWrite(ep.GetAsByteArray());
                //ep.SaveAs(Response.OutputStream);    第二种方式
                Response.Flush();
                Response.End();
    
            }
    
  • 相关阅读:
    dd命令测试IO
    手工释放linux内存——/proc/sys/vm/drop_caches
    CNN中的卷积理解和实例
    Python map() 函数
    Python filter() 函数
    Python 用 os.walk 遍历目录
    在python中读写matlab文件
    人生, 不要在别扭的事上纠结
    javascript 最佳实践 ( 24 章 )
    CSS权威指南(第3版)
  • 原文地址:https://www.cnblogs.com/Evan-Pei/p/EPPlusExcel.html
Copyright © 2011-2022 走看看