http://xml.sz.luohuedu.net/xml/ShowDetail.asp?id=EY1XLDYV-PIDF-43LO-1WFL-FMY5ALE1F635

解决方案 »

  1.   

    基于WebForm的操作Word文档实例
    http://www.aspxcn.com/dotnetarticle/html/97.html
      

  2.   

    一个非常好的例子
    http://www.codeproject.com/useritems/WordApplication.asp
      

  3.   

    http://www.codeproject.com/useritems/WordApplication.asp的中文翻译
    http://www.csdn.net/develop/article/20/20901.shtm
      

  4.   

    /// <summary>
    /// 通过Grid对象导出excel文件,应用于表头固定,无分页、无合计或合计在网格中的情况
    /// </summary>
    /// <param name="grd">需要导出的网格对象</param>
    /// <param name="FileName">下载文件名(不带扩展符)</param>
    /// <param name="exportFileType">导出类型</param>
    /// <param name="TBHeadName">标题名称</param>
    /// <param name="ExPara">需要附加的表头表尾标注,如制表人等</param>
    public static void  ExportFileByGrid(UltraWebGrid grd,string FileName,ExportFileTypes exportFileType,string TBHeadName,EXPARA[] ExPara)
    {
    //先确认从第几列开始导出
    int intBeginCol=0;
    if(grd.Columns[0].HeaderText==null || grd.Columns[0].HeaderText.Trim()=="")
    {
    //该列为标示列,不导出
    intBeginCol=1;
    }

    string strExt;
    switch(exportFileType)
    {
    case ExportFileTypes.Excel:
    strExt = "xls";
    break;
    case ExportFileTypes.Word:
    strExt = "doc";
    break;
    default:
    strExt = "htm";
    break;
    }
    FileName += "." + strExt;
    HttpResponse resp; resp =grd.Page.Response;
    resp.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312"); // 解决中文乱码之关键
    // resp.Charset = "utf-8"
    // resp.AddFileDependency(FileName)
    // resp.ContentType = "Text/HTML"
    //resp.ContentType = "application/vnd.ms-excel";
    //resp.AppendHeader("Content-Type", "text/html; charset=gb2312");
    resp.AppendHeader("Content-Disposition", "attachment;filename=" + grd.Page.Server.UrlEncode( FileName)); // 必要,做成下载文件
    int intRowsCount = grd.Rows.Count;//行数
    int intColsCount=grd.Columns.Count;//列数
    string strTmp; resp.Write("<HTML>\r\n");
    resp.Write("<HEAD>\r\n");
    strTmp = "<meta http-equiv=\"Content-Type\" content=\"Application/vnd.ms-excel; charset=gb2312\">" + "\n";
    resp.Write(strTmp);
    resp.Write("</HEAD>\r\n");
    resp.Write("<BODY>\r\n"); // 输出标题
    if(TBHeadName.Trim() !="")
    {
    //strTmp = "<table ><tr><td align='center'><font size=5.5 >" + TBHeadName + "</font></td></tr></table>";
    strTmp = "<h3 align=center style=\"FONT-SIZE: 16pt\">" + TBHeadName + "</h3>";
    //<h3 style="FONT-SIZE: 25px">aaaa</h3>
    resp.Write(strTmp);
    }
    // 输出表头标注--如填报单位等
    resp.Write("<p>");
    strTmp="";
    for(int ii=0;ii<=ExPara.Length-1;ii++)
    {
    //先输出在表前面的

    if(ExPara[ii].Location==0)
    {
    strTmp+="<font style=\"FONT-SIZE: 10pt\"><b>"+ExPara[ii].FieldName + ":</b></font><font style=\"FONT-SIZE: 10pt\">" + ExPara[ii].FieldValue +"</font>";//+ "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
    }
    }
    resp.Write(strTmp);
    resp.Write("</p>\r\n");            //输出主表格
    resp.Write("<TABLE cellSpacing=0 cellPadding=0 border=1>\r\n");
    //以下一行一行输出表格信息

    //输出表头
    resp.Write("<tr>");
    strTmp="";
    for(int ii=intBeginCol;ii<=intColsCount-1;ii++)
    {

    if(!grd.Columns[ii].Hidden)
    {
    strTmp+="<td align=middle><b><font style=\"FONT-SIZE: 10.5pt\">"+grd.Bands[0].Columns[ii].HeaderText + "</font></b></td>" + "\r\n";
    }
    }
    resp.Write(strTmp);
    resp.Write("</tr>" + "\r\n"); //输出网格各行数据 for(int ii=0;ii<=intRowsCount-1;ii++)   //遍历各行
    {
    strTmp="";
    resp.Write("<tr>" + "\r\n");
    UltraGridRow row=grd.Rows[ii];
    for(int jj=intBeginCol;jj<=intColsCount-1;jj++)
    {
    if(!grd.Columns[jj].Hidden)
    {
    strTmp+="<td align=left><font style=\"FONT-SIZE: 10pt\">"+row.Cells[jj].GetText() + "</font></td>" + "\r\n";
    }
    }
    resp.Write(strTmp); resp.Write("</tr>"+ "\r\n"); }

    resp.Write("</TABLE>\r\n"); // 输出表尾标注--如填报单位等
    resp.Write("<p>");
    strTmp="";
    for(int ii=0;ii<=ExPara.Length-1;ii++)
    {
    //先输出在表前面的

    if(ExPara[ii].Location==1)
    {
    strTmp+="<font style=\"FONT-SIZE: 10pt\"><b>"+ExPara[ii].FieldName + ":</b>" + ExPara[ii].FieldValue + "</font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
    }
    }
    resp.Write(strTmp);
    resp.Write("</p>\r\n");
    resp.Write("</BODY>\r\n");
    resp.Write("</HTML>\r\n");
         resp.End(); }