当前位置:编程学习 > C#/ASP.NET >>

【百分求助】导出图片到excel

现在做的页面中,一个是用 MSChart 生成的图片,图片下面有一个 Gridview,现在实现了点击 button 将 Gridview 数据导出到指定的 Excel 中。

想实现:

将 图片 导入 Excel 中,放在 第二个 Sheet 中。 即 第一个 Sheet 存放 Gridview 的表格,第二个 Sheet 存放 图片。 --------------------编程问答-------------------- SF --------------------编程问答-------------------- using  Excel  --------------------编程问答-------------------- 用xml做。 --------------------编程问答-------------------- 帮顶!! --------------------编程问答-------------------- 先读图片到stream里,再写入excel
(纯想法未实现) --------------------编程问答-------------------- 操作多sheet,操作excel模板,打开模板赋值给单元格,再添加sheet添加图片
private Excel.Application m_objExcel = null;
private Excel.Workbooks m_objBooks = null;
private Excel._Workbook m_objBook = null;
private Excel.Sheets m_objSheets = null;
private Excel._Worksheet m_objSheet = null;
private Excel.Range m_objRange = null;
private object m_objOpt = System.Reflection.Missing.Value;

public void InsertPicture(string RangeName, string PicturePath, float PictuteWidth, float PictureHeight) 
        { 
         m_objRange = m_objSheet.get_Range(RangeName, m_objOpt); 
         m_objRange.Select(); 
         float PicLeft, PicTop; 
          PicLeft = Convert.ToSingle(m_objRange.Left); 
          PicTop = Convert.ToSingle(m_objRange.Top); 
            m_objSheet.Shapes.AddPicture(PicturePath,Microsoft.Office.Core.MsoTriState.msoFalse, 
            Microsoft.Office.Core.MsoTriState.msoTrue, PicLeft, PicTop, PictuteWidth, PictureHeight); 
      } 
http://topic.csdn.net/u/20081223/15/a3a4b011-9280-4084-b3c3-eb62e3a46a93.html --------------------编程问答-------------------- http://www.cnblogs.com/dahuzizyd/archive/2007/04/11/709283.html --------------------编程问答-------------------- 把图片 搞成二进制
FileStream fs = new System.IO.FileStream(Server.MapPath("a.jpg"), System.IO.FileMode.Open);
            byte[] buf = new byte[fs.Length];
            fs.Read(buf, 0, (int)fs.Length);
            string s = Convert.ToBase64String(buf);
存的时候就转下就,下面就不会了,也只是想法,没有实现 --------------------编程问答-------------------- 你好,请问你的问题解决了吗?我也要实现同样的功能,可是没有找到解决方案。如果你解决了,可以告诉我一下吗?谢谢! --------------------编程问答-------------------- 大哥请问你是怎么解决的??谢谢!!在线等!1 --------------------编程问答--------------------   protected void LinkButton2_Click(object sender, EventArgs e)
    {
        GridView1.AllowPaging = false;
        DataBind();
        Response.Clear();
        Response.Buffer = true;
        Response.Charset = "GB2312";
        //下面这行很重要, attachment 参数表示作为附件下载,您可以改成 online在线打开
        //filename=FileFlow.xls 指定输出文件的名称,注意其扩展名和指定文件类型相符,可以为:.doc    .xls    .txt   .htm
        Response.AppendHeader("Content-Disposition", "attachment;filename=FileFlow.xls");
        Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
        //Response.ContentType指定文件类型 可以为application/ms-excel、application/ms-word、application/ms-txt、application/ms-html 或其他浏览器可直接支持文档
        Response.ContentType = "application/ms-excel";
        this.EnableViewState = false;
        // 定义一个输入流
        System.IO.StringWriter oStringWriter = new System.IO.StringWriter();
        System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);
       GridView1.AllowPaging = false;
       GridView1.RenderControl(oHtmlTextWriter);
        //this 表示输出本页,你也可以绑定datagrid,或其他支持obj.RenderControl()属性的控件
        Response.Write(oStringWriter.ToString());
        Response.Flush();
        Response.End();

        GridView1.AllowPaging = true;
        DataBind();


    } --------------------编程问答--------------------
引用 6 楼 wuyq11 的回复:
操作多sheet,操作excel模板,打开模板赋值给单元格,再添加sheet添加图片
private Excel.Application m_objExcel = null;
private Excel.Workbooks m_objBooks = null;
private Excel._Workbook m_objBook = null;
private Excel.Sheets m_……


为什么我用这个方法一直提示有无效参数呢? --------------------编程问答--------------------
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,