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
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;
http://www.51aspx.com/CV/WordToHtml/
上面有个例子就是,你可以去下载来看看.
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
如果整页输出把button visible=false
最好输出控件gridview里的内容
这个方法输出格式跟页面的一样,如果要严格控制word样式最好使用wordapplication编程,比较麻烦一点,网上资料很多的
乱码,这是为什么呢?请赐教,不胜感激!
<system.web>
<globalization requestEncoding="GB2312" responseEncoding="GB2312"/>
</system.web>
试试
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"
/>
但还是不行,为什么呢。