0

我正在将网格表添加到 excel 并在 excel 中添加标题。

     string subject = lbl_Subj.Text;
    Response.Clear();
    Response.Buffer = true;
    Response.ClearHeaders();
    Response.AddHeader("Cache-Control", "no-store, no-cache");        
    Response.AddHeader("content-disposition", "attachment;filename=" + subject + "-Status");
    Response.Charset = "";
    this.EnableViewState = false;    
    Response.ContentType = "application/vnd.ms-excel";
    System.IO.StringWriter stringWrite = new System.IO.StringWriter();
    System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
    Grid_UserTable.RenderControl(htmlWrite);        
    rptList.RenderControl(htmlWrite);       
    Response.Write(stringWrite.ToString());     
    Response.End();

如何在 excel 中添加一些文本,我想添加一些字符串,例如

string add="this is the text I want to add to the excel";
4

4 回答 4

2

尝试添加:htmlWrite.WriteLine(add);

  string subject = lbl_Subj.Text;
    Response.Clear();
    Response.Buffer = true;
    Response.ClearHeaders();
    Response.AddHeader("Cache-Control", "no-store, no-cache");        
    Response.AddHeader("content-disposition", "attachment;filename=" + subject + "-Status");
    Response.Charset = "";
    this.EnableViewState = false;    
    Response.ContentType = "application/vnd.ms-excel";
    System.IO.StringWriter stringWrite = new System.IO.StringWriter();
    System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);

    htmlWrite.WriteLine(add);

    Grid_UserTable.RenderControl(htmlWrite);        
    rptList.RenderControl(htmlWrite);       
    Response.Write(stringWrite.ToString());     
    Response.End();
于 2012-03-14T08:33:52.720 回答
0

只要您使用的是 Office 2007/2010,就可以使用 Office Open XML - http://msdn.microsoft.com/en-us/office/ee358824

问候, Nitin Rastogi

于 2011-11-28T11:38:49.993 回答
0

您不能使用字符串/html 编写器,因为 excel 是二进制的。

您必须使用 Excel PIA 来创建 Excel 工作表。

http://msdn.microsoft.com/en-us/library/ff597926.aspx

于 2011-11-28T11:40:04.977 回答
0
hw.RenderBeginTag("strong");
hw.Write("this is the text I want to add to the excel" + DateTime.Now);
hw.RenderEndTag();

如果您需要任何帮助,请告诉我。

于 2014-06-27T08:37:47.427 回答