Html标签输出到前台并导出到Excel

简介: 本篇文章介绍一个简单的从后台拼html标签到前台显示并能导出到Excel的例子。 例如,我们在后台拼接一个课程表,要输出到前台,样子如下: 后台部分代码: ? 1 2 3 4 5 ...

本篇文章介绍一个简单的从后台拼html标签到前台显示并能导出到Excel的例子。

例如,我们在后台拼接一个课程表,要输出到前台,样子如下:

image_thumb2

后台部分代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
StringBuilder html = new  StringBuilder();
         html.Append( "<table cellpadding=\"0\" cellspacing=\"0\" style=\"border:1px solid black;text-align:center;\" width=\"700\">\n" );
         html.Append( "<tr>\n<td style=\"border-bottom: 1px solid black;text-align:center;\" colspan=\"6\">XXXX年XX月课程表</td>\n</tr>\n" );
         /*********************************************/
         html.Append( "<tr>\n" );
         for  ( int  i = 0; i <= 5; i++)
         {
             if  (i == 5)
             {
                 html.Append( "<td style=\"border-bottom: 1px solid black;text-align: center;\">"  + ( string .IsNullOrEmpty(toCNNum(i)) ? "&nbsp;"  : toCNNum(i)) + "</td>\n" );
             }
             else
             {
                 html.Append( "<td style=\"border-bottom: 1px solid black;text-align:center;border-right: 1px solid black;\">"  + ( string .IsNullOrEmpty(toCNNum(i)) ? "&nbsp;"  : toCNNum(i)) + "</td>\n" );
             }
         }
         html.Append( "</tr>\n" );
         /*********************************************/
         html.Append( "<tr>\n" );

 

      说白了就是在后台动态的拼接标签,最后输出到前台做显示。

      这里我们可以看到样式固定的写到标签的内部了,这样做最后其实只需要输出table标签就可以了,但是需要加样式的地方就需要加在标签内部。

      当然我们可以把样式写成一个style提取出来,在标签中加入class=”style”就行了,这样做没有问题,输出到前台也可以正常显示,但是在导出到excel时会遇到问题,导出的excel没有样式,因为我们在后台输出时只是拼接了table标签没有把样式带上,样式可以写在前台的head标签里,或者独立到css文件中,但是在导出的excel中并不带这些样式。所以,在后台拼接标签时,我们需要带上完整的样式增加一些必要的标签,再导出到excel时就没有问题了。

      以上两种方法可以根据实际应用来定。

      下面我们看一下excel导出的关键代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
//输出的应用类型
         Response.ContentType = "application/vnd.ms-excel" ;
         //设定编码方式,若输出的excel有乱码,可优先从编码方面解决
         // Response.Charset = "gb2312";
         Response.Charset = "utf-8" ;
         Response.ContentEncoding = System.Text.Encoding.UTF8;
         //关闭ViewState,此属性在Page中
         EnableViewState = false ;
         //filenames是自定义的文件名
         Response.AppendHeader( "Content-Disposition" , "attachment;filename=data.xls" );
         //content是步骤1的html,注意是string类型
         Response.Write(createTable());
        Response.End();

 

注释已经写得很清晰了,导出到excel的样子:

clip_image002_thumb2

本文转载自:http://www.cnblogs.com/Johnny_Z/archive/2012/10/31/2748252.html

相关文章
|
1月前
|
移动开发 HTML5
HTML5标签的类型
HTML5标签的类型。
56 5
|
18天前
|
Java API Apache
|
19天前
|
移动开发 编解码 UED
除了 `<audio>` 和 `<video>` 标签,HTML5 还支持哪些多媒体格式?
【10月更文挑战第19天】HTML5对多种多媒体格式的支持,为网页开发者提供了丰富的选择,能够更好地满足不同类型多媒体内容在网页中的展示和交互需求,提升了网页的用户体验和多媒体应用的多样性。
|
22天前
|
存储 Java API
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
28 4
|
26天前
|
JavaScript 前端开发 数据处理
Vue导出el-table表格为Excel文件的两种方式
Vue导出el-table表格为Excel文件的两种方式
|
1月前
|
easyexcel Java UED
SpringBoot中大量数据导出方案:使用EasyExcel并行导出多个excel文件并压缩zip后下载
在SpringBoot环境中,为了优化大量数据的Excel导出体验,可采用异步方式处理。具体做法是将数据拆分后利用`CompletableFuture`与`ThreadPoolTaskExecutor`并行导出,并使用EasyExcel生成多个Excel文件,最终将其压缩成ZIP文件供下载。此方案提升了导出效率,改善了用户体验。代码示例展示了如何实现这一过程,包括多线程处理、模板导出及资源清理等关键步骤。
|
1月前
|
Java BI API
spring boot 整合 itextpdf 导出 PDF,写入大文本,写入HTML代码,分析当下导出PDF的几个工具
这篇文章介绍了如何在Spring Boot项目中整合iTextPDF库来导出PDF文件,包括写入大文本和HTML代码,并分析了几种常用的Java PDF导出工具。
440 0
spring boot 整合 itextpdf 导出 PDF,写入大文本,写入HTML代码,分析当下导出PDF的几个工具
|
1月前
|
前端开发 JavaScript
💥【exceljs】纯前端如何实现Excel导出下载和上传解析?
本文介绍了用于处理Excel文件的库——ExcelJS,相较于SheetJS,ExcelJS支持更高级的样式自定义且易于使用。表格对比显示,ExcelJS在样式设置、内存效率及流式操作方面更具优势。主要适用于Node.js环境,也支持浏览器端使用。文中详细展示了如何利用ExcelJS实现前端的Excel导出下载和上传解析功能,并提供了示例代码。此外,还提供了在线调试的仓库链接和运行命令,方便读者实践。
311 5
|
19天前
|
存储 移动开发 前端开发
|
1月前
|
前端开发
【HTML】img标签和超链接标签
【HTML】img标签和超链接标签
43 2

热门文章

最新文章

下一篇
无影云桌面