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

html标签如何导出excel

在我的数据库中有个字段的值是用FreeTextBox写进去的,里面内容是HTML标签,在做导出EXCEL时,直接按值显示出来,请问如何能够转换成页面效果后在EXCEL中显示。

分数不多了,麻烦大家的 --------------------编程问答-------------------- 方法1:Response.Charset = "GB2312";
                Response.ContentEncoding = Encoding.UTF8;
                Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode("文件名" + ".xls", Encoding.UTF8)); //以excel格式输出
                Response.ContentType = "application/ms-excel";
                Response.End();

该种方式用右键选择打开方式为记事本,可以看到还是显示的是HTML文档
方法2:解析HTML,调用office Api,新建一个Excel,往里面插数据 --------------------编程问答-------------------- string html="<a>xx</a>";
Response.Charset = "GB2312";
Response.ContentEncoding = Encoding.UTF8;
Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode("文件名" + ".xls", Encoding.UTF8)); //以excel格式输出
  Response.ContentType = "application/ms-excel";
 Response.Write(html);
  Response.End();
--------------------编程问答-------------------- 谢谢

我也是用的你的方法1,结果还是不可以,我那个字段的值是类似下面这样的
<table border="1" bordercolor="#000000" width="100%" bgcolor="#ffffff" _innercreatetable="true"><tbody><tr><td   (略)


--------------------编程问答-------------------- 语句是这样的

Response.ContentEncoding = System.Text.Encoding.UTF8;
        Response.AddHeader("Content-Disposition", "attachment; filename=" + Server.UrlPathEncode("报表" + ".xls"));
        Response.Charset = "GB2312";
        Response.ContentType = "application/ms-excel";
        Response.OutputStream.Write(buffer, 0, buffer.Length);
        Response.Flush();
        Response.End(); --------------------编程问答-------------------- 这个问题是怎么解决的呐? --------------------编程问答-------------------- 不好意思,这个问题没有解决 --------------------编程问答-------------------- 直接将 html 保存为 .xls 文件即可。

我想你那个里面的html是 excel的网页格式。(可参考:excel另存为,选择其他格式,然后在保存类型中选择网页|.html ,然后用记事本查看另存后的文件内容) 
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,