转自: http://newyaner.blog.sohu.com/84170098.html
因为ms word和excel的文档都支持html文本格式,因此可以先用word或excel做好模版,另存为Web页,然后将该html改成jsp,将数据部分动态填入即可,不用很辛苦的调整格式
word页面只要在jsp头设置如下指令:
<%@page contentType="application/msword;charset=GBK" %>
excel如下:
<%@page contentType="application/vnd.ms-excel;charset=GBK" %>
使用这种方式客户端必须安装有office软件,用户访问时将在ie中直接用word或excel打开该页面。
此方法优势是模板设计、调整方便,无需在服务器端使用复杂的POI或jxl技术,也无需在客户端使用ActiveX控件技术,更安全、方便,轻松实现较好的打印效果。
microsoft关于服务器端动态创建office文档的资料(asp示例):
http://support.microsoft.com/default.aspx?scid=KB;en-us;301044
方法二
1. 在Word或Excel中制作报表的样式。
Excel的行高和列宽单位无法用mm或cm表示。
需要计算。在1024*768下,1CM约为38像素。
以此为基准,可计算并控制报表的行列位置。
2. 在Word中设置“表格——标题行重复”。
在Excel中设置“文件——页面设置——工作表——打印标题”。
3. 另存为网页,改后缀名“htm”为“jsp”。
4. Word报表文件头为:
<%@page contentType="application/msword;charset=GBK" language="java"%>
Excel报表文件头为:
<% @page contentType="application/vnd.ms-excel;charset=GBK" language="java"%>
5. 在文件头部分定义打印参数变量如下(以Excel为例):
<%
//需要打印的记录条数
int PrintRowCount=RowCount;
//每页打印的记录条数
int PageRowCount=16;
//最后一页需要打印的空行的数目
int LoopNum=PageRowCount-PrintRowCount%PageRowCount;
//打印区域的高度,其中2的意思是每页需要重复的标题行的数目
int PrintAreaHeight=(PrintRowCount%PageRowCount==0)?PrintRowCount+2:PrintRowCount+LoopNum+2;
%>
6. 在<style></style>后,改动<!--[if gte mso 9]与<![endif]-->标签中的XML标签内容,主要是设置动态打印区域(以Excel为例):
<%
out.print(" ......
"<x:ExcelName>"+
"<x:Name>Print_Area</x:Name>"+
"<x:SheetIndex>1</x:SheetIndex>"+
"<x:Formula>=Sheet1!$A$1:$G$"+PrintAreaHeight+"</x:Formula>"+
"</x:ExcelName>"+
...... ");
%>
7. JSP其他编码。
下面是主体循环打印部分(以Excel为例):
<%
for (int i=1;i<=PrintRowCount; i++)
{
out.print("<tr>"<td>"+i+"</td></tr>"); //有内容
}
if (LoopNum!=PageRowCount) //有空行则打印空行补齐最末一页
for (int j=1;j<=LoopNum; j++)
{
out.print("<tr><td> </td></tr>");//无内容
}
%>
8. 测试并继续修改
1. 在Word或Excel中制作报表的样式。
Excel的行高和列宽单位无法用mm或cm表示。
需要计算。在1024*768下,1CM约为38像素。
以此为基准,可计算并控制报表的行列位置。
2. 在Word中设置“表格——标题行重复”。
在Excel中设置“文件——页面设置——工作表——打印标题”。
3. 另存为网页,改后缀名“htm”为“jsp”。
4. Word报表文件头为:
<%@page contentType="application/msword;charset=GBK" language="java"%>
Excel报表文件头为:
<% @page contentType="application/vnd.ms-excel;charset=GBK" language="java"%>
5. 在文件头部分定义打印参数变量如下(以Excel为例):
<%
//需要打印的记录条数
int PrintRowCount=RowCount;
//每页打印的记录条数
int PageRowCount=16;
//最后一页需要打印的空行的数目
int LoopNum=PageRowCount-PrintRowCount%PageRowCount;
//打印区域的高度,其中2的意思是每页需要重复的标题行的数目
int PrintAreaHeight=(PrintRowCount%PageRowCount==0)?PrintRowCount+2:PrintRowCount+LoopNum+2;
%>
6. 在<style></style>后,改动<!--[if gte mso 9]与<![endif]-->标签中的XML标签内容,主要是设置动态打印区域(以Excel为例):
<%
out.print(" ......
"<x:ExcelName>"+
"<x:Name>Print_Area</x:Name>"+
"<x:SheetIndex>1</x:SheetIndex>"+
"<x:Formula>=Sheet1!$A$1:$G$"+PrintAreaHeight+"</x:Formula>"+
"</x:ExcelName>"+
...... ");
%>
7. JSP其他编码。
下面是主体循环打印部分(以Excel为例):
<%
for (int i=1;i<=PrintRowCount; i++)
{
out.print("<tr>"<td>"+i+"</td></tr>"); //有内容
}
if (LoopNum!=PageRowCount) //有空行则打印空行补齐最末一页
for (int j=1;j<=LoopNum; j++)
{
out.print("<tr><td> </td></tr>");//无内容
}
%>
8. 测试并继续修改
1. 在Word或Excel中制作报表的样式。
Excel的行高和列宽单位无法用mm或cm表示。
需要计算。在1024*768下,1CM约为38像素。
以此为基准,可计算并控制报表的行列位置。
2. 在Word中设置“表格——标题行重复”。
在Excel中设置“文件——页面设置——工作表——打印标题”。
3. 另存为网页,改后缀名“htm”为“jsp”。
4. Word报表文件头为:
<%@page contentType="application/msword;charset=GBK" language="java"%>
Excel报表文件头为:
<% @page contentType="application/vnd.ms-excel;charset=GBK" language="java"%>
5. 在文件头部分定义打印参数变量如下(以Excel为例):
<%
//需要打印的记录条数
int PrintRowCount=RowCount;
//每页打印的记录条数
int PageRowCount=16;
//最后一页需要打印的空行的数目
int LoopNum=PageRowCount-PrintRowCount%PageRowCount;
//打印区域的高度,其中2的意思是每页需要重复的标题行的数目
int PrintAreaHeight=(PrintRowCount%PageRowCount==0)?PrintRowCount+2:PrintRowCount+LoopNum+2;
%>
6. 在<style></style>后,改动<!--[if gte mso 9]与<![endif]-->标签中的XML标签内容,主要是设置动态打印区域(以Excel为例):
<%
out.print(" ......
"<x:ExcelName>"+
"<x:Name>Print_Area</x:Name>"+
"<x:SheetIndex>1</x:SheetIndex>"+
"<x:Formula>=Sheet1!$A$1:$G$"+PrintAreaHeight+"</x:Formula>"+
"</x:ExcelName>"+
...... ");
%>
7. JSP其他编码。
下面是主体循环打印部分(以Excel为例):
<%
for (int i=1;i<=PrintRowCount; i++)
{
out.print("<tr>"<td>"+i+"</td></tr>"); //有内容
}
if (LoopNum!=PageRowCount) //有空行则打印空行补齐最末一页
for (int j=1;j<=LoopNum; j++)
{
out.print("<tr><td> </td></tr>");//无内容
}
%>
8. 测试并继续修改
三、
<object classid="clsid:0002E510-0000-0000-C000-000000000046" id="Sdivadsheet1"
style="HEIGHT: 100%; WIDTH: 100%" width="14" height="14">
<param name="HTMLURL" value="<%=strURL%>">
<param name="HTMLData" value="">
<param name="DataType" value="HTMLURL">
<param name="AutoFit" value="0">
<param name="DisplayColHeaders" value="0">
<param name="DisplayGridlines" value="0">
<param name="DisplayHorizontalScrollBar" value="-1">
<param name="DisplayRowHeaders" value="0">
<param name="DisplayTitleBar" value="0">
<param name="DisplayToolbar" value="-1">
<param name="DisplayVerticalScrollBar" value="-1">
<param name="EnableAutoCalculate" value="-1">
<param name="EnableEvents" value="0">
<param name="MoveAfterReturn" value="0">
<param name="MoveAfterReturnDirection" value="0">
<param name="RightToLeft" value="0">
<param name="ViewableRange" value="1:100">
</object>
分享到:
相关推荐
jsp导出Excel;简单实用!导出Excel;导出Word jsp导出Excel;简单实用!导出Excel;导出Word jsp导出Excel;简单实用!导出Excel;导出Word
根据自己在实际的开发中总结的体会,希望帮助你解决导出WROID 或者EXCEL的问题,
word页面只要在jsp头... 您可能感兴趣的文章:JSP上传excel及excel插入至数据库的方法JSP导出Excel文件的方法JSP实现从数据库导出数据到Excel下载的方法jsp实现针对excel及word文档的打印方法jsp导出excel并支持分she
POI例子,里面使用的Jquery ajax拿后台数据,然后导出成Excel文件,也可导出Word,PPT文件。
SOAOffice除了提供Word/Excel动态数据填充,Word/Excel数据导入导出,Word/Excel/PowerPoint等Office文档的在线打开、编辑、保存,权限控制,只读控制等功能外,还给在线办公内置了强大的支持功能:强制痕迹保留,...
SpringMVC+jspereport,实现报表分页查看、文件(pdf、excel、word)导出,以及html展示和调用浏览器打印功能实现打印,报文都是采用ireport5.6.0设计
使用JSP操作Excel有三中方法 第一种方法:静态方法生成Word和Excel文档 第二种方法:如何使用POI组件操作Excel 地三种方法:使用JXL组件操作Excel
使用POI导入,导出Excel jsp下载文件的实现方法 及 注意 jsp打印,导出word-excel 等
一个网上报名系统,用户注册,提交信息,修改信息,管理员查看信息,删除信息,将报名信息导出为word,excel。mysql+JSP实现
本组件可以导出各种格式的前台,可导出多个的内容,并且可以包含导出图片的功能(excel除外),希望对一些人有用,且希望使用的人提出宝贵意见。如有问题可加qq:244926053,email:cck1112@163.com,谢谢
如何通过 java 语言 从 jsp 页面上的数据 导入 word 里 如果你的数据形式是以 表格显示的 是可以的 直接把 jsp 中 table 内容导出到 word 或 excel
如流程审批单,在流程处理完成后将处理过程按照流程单的要求导出,有时程序中需要实现生成标准Word文档,要求能够打印,并且保持页面样式不变,常见的方案有POI、iText、JACOB、JSP几种方式,POI读取Word文档比较...
本资源是本人根据学院需求开发的一个网上报名系统,采用MVC架构,报名人员可以提交,查看,并修改自己的个人报名信息,管理员可以删除报名者信息,把报名者信息导出为Wold、Excel,本资源中包括数据库文件。...
第5篇 操作Word、Excel、报表与打印篇 第20章 JSP操作Word 764 20.1 应用JavaScript导出到Word 765 20.2 应用响应流导出到Word 766 20.3 应用POI组件导出到Word 772 第21章 JSP操作Excel 775 21.1 应用JXL组件操作...
第5篇 操作Word、Excel、报表与打印篇 第20章 JSP操作Word 764 20.1 应用JavaScript导出到Word 765 20.2 应用响应流导出到Word 766 20.3 应用POI组件导出到Word 772 第21章 JSP操作Excel 775 21.1 应用JXL组件操作...
增加word和excel模板 ; 已实现 excel导出 和 文件导入 增加redis,存储商品信息主要存储。 增加mq,订单并发,再购物车层次上做到入库并发控制 增加邮件发送,订单支付成功和发货成功给客户和管理员分别发送邮件...
[已实现] 增加word和excel模板 ; excel导出 和 文件导入 增加redis,存储商品信息主要存储。 增加mq,订单并发,再购物车层次上做到入库并发控制 [已实现] 增加邮件发送,订单支付成功和发货成功给客户和管理员...
[已实现] 增加word和excel模板 ; excel导出 和 文件导入 增加redis,存储商品信息主要存储。 增加mq,订单并发,再购物车层次上做到入库并发控制 [已实现] 增加邮件发送,订单支付成功和发货成功给客户和管理员...