小第我急求一方法具体如下:我在页面中添加了一个“按钮”,点击后就会调用Word并把该页面中的内容写入Word中,这在ASP.NET如何实现呢?请各位大虾帮帮忙,小弟在此谢过了!

解决方案 »

  1.   

    Help,难道没人吗?只要有方法我可以在追加分。
      

  2.   

    可以试试Response.ContentType = "Application/msword" 性能不是很好 ---------------------主要代码
    Response.Clear(); 
    Response.Buffer= true; 
    Response.Charset="utf-8";  Response.ContentEncoding=System.Text.Encoding.GetEncoding("utf-8");     
    Response.ContentType = "application/ms-word"; 
    this.EnableViewState = false;
      

  3.   

    http://bbs.51aspx.com/showtopic-217.html
    http://www.51aspx.com/CV/WordToHtml/
      

  4.   

    www.eviuu.com源码下载
    上面有个例子就是,你可以去下载来看看.
      

  5.   

    sub button_Click(Sender as Object, e as EventArgs) 
    If Page.IsValid then
    Response.Clear()
    Response.Buffer= true
    Response.Charset="utf-8"
    Response.AppendHeader("Content-Disposition","attachment;filename=FileFlow.doc")
    Response.ContentEncoding=System.Text.Encoding.GetEncoding("utf-8")
    Response.ContentType = "application/ms-word"
    me.EnableViewState = false
    dim oStringWriter as new System.IO.StringWriter()
    dim oHtmlTextWriter as new System.Web.UI.HtmlTextWriter(oStringWriter)
    me.RenderControl(oHtmlTextWriter)
    Response.Write(oStringWriter.ToString())
    Response.End()
    end if
    end sub
    c#把me改成this
    代码是把页面上整页输出的,如果要把某个gridview或者datagrid输出就把me修改为me.gridview
      

  6.   

    谢谢luckyboy110兄弟,我台风重灾区苍南地,我会给你加分的。
      

  7.   

    加分给我加到这个号,刚才上错了
    如果整页输出把button visible=false
    最好输出控件gridview里的内容
    这个方法输出格式跟页面的一样,如果要严格控制word样式最好使用wordapplication编程,比较麻烦一点,网上资料很多的
      

  8.   

       我用了你的方法,能把DataGrid里的数据保存到word里,打开word一看,英文,数字都是显示正常,但中文就会出现
    乱码,这是为什么呢?请赐教,不胜感激!
      

  9.   

    那你在web.config里的
    <system.web>
    <globalization requestEncoding="GB2312" responseEncoding="GB2312"/>
    </system.web>
    试试
      

  10.   

      以下是代码:
      private void Button1_Click(object sender, System.EventArgs e)
    {
        System.Web.HttpResponse httpResponse = Page.Response;
        Response.Clear(); 
                Response.Buffer=true; 
                Response.Charset="utf-8"; 
                Response.AppendHeader("Content-Disposition","attachment;filename=FileFlow.doc");
        httpResponse.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312");
                Response.ContentEncoding=System.Text.Encoding.GetEncoding("utf-8"); 
                Response.ContentType="application/ms-word"; 
                this.EnableViewState=false; 
                StringWriter oStringWriter=new StringWriter();
                HtmlTextWriter oHtmlTextWriter=new HtmlTextWriter(oStringWriter);
                this.DataGrid1.RenderControl(oHtmlTextWriter); 
                Response.Write(oStringWriter.ToString()); 
                Response.End(); 
    }
       并且
        <globalization 
                requestEncoding="GB2312"
                responseEncoding="GB2312" 
       />
     但还是不行,为什么呢。
      

  11.   

      非常感谢luckyboy101的帮助,问题解决了,原来只要把编码统一为"GB2312"就行了,结贴了,接分。