导出到word文档--带有表格

原创 2007年09月19日 16:03:00

 有位网友说导出到word文档时原来的表格样式没有了,我认为是你在导出到word时没有设置word样式,之前我没有导出到word的太多经验,Excel导入导出是做了些,呵呵^_^

下面给个导出到word的例子,能设置表格,我也是刚看的,希望对需要的朋友有帮助.

import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Collection;
import java.util.Iterator;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import com.spsoft.basic.etfproj.service.EtfprojService;
import com.spsoft.basic.etmproj.service.EtmprojService;
import com.spsoft.construct.projmomerabili.domain.Projmemorabilia;
import com.spsoft.construct.projmomerabili.service.ProjmemorabiliaService;
import com.spsoft.framework.struts.BasePerformAction;
import com.spsoft.global.service.Services;


public class ExportToWordAction extends BasePerformAction {

 public ActionForward perform(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response) {


  String projId = request.getParameter("projId");
  String projType = request.getParameter("projType");
  String projName = "";
  
  if (projType.equals("1")) {
   EtfprojService service = (EtfprojService)Services.GetService(EtfprojService.SERVICE_NAME);
   projName = service.getEtfproj(Long.valueOf(projId)).getEtfprojname();
  }
  else if (projType.equals("2")) {
   EtmprojService service = (EtmprojService)Services.GetService(EtmprojService.SERVICE_NAME);
   projName = service.getEtmproj(Long.valueOf(projId)).getEtmprojname();
  }
  
  try {
   String fileName = projName + "-工程大事记";
   response.setHeader("content-disposition","attachment; filename="
     + new String(fileName.getBytes("GBK"),"ISO-8859-1")+".doc");
      response.setContentType("application/vnd.ms-word;charset=UTF-8");

   ProjmemorabiliaService service=(ProjmemorabiliaService)
    Services.GetService(ProjmemorabiliaService.NAME);
    //获得需要显示的信息列表
  Collection _list = service.listProjmemorabiliaByProjidAndProjtype(projId, projType);    
   StringBuffer sb = new StringBuffer();
   sb.append("<html>").append("<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>")
   .append("<body>")
   .append("<table width='100%' border='0' cellpadding='0' cellspacing='1' bgcolor='#cccccc'>")
   .append("<tr>")
   .append("<td align='center' colspan='2'>")
   .append("<B>" + fileName + "</B>")
   .append("</td>")
   .append("</tr>");
   sb.append("<tr>")
   .append("<td>")
   .append("时间")
   .append("</td>")
   .append("<td>")
   .append("内容")
   .append("</td>")
   .append("</tr>");

   for (Iterator it = _list.iterator(); it.hasNext();) {

    Projmemorabilia pm = (Projmemorabilia) it.next();

    sb.append("<tr bgcolor='#ffffff'>")
    .append("<td>")
    .append(new SimpleDateFormat("yyyy年MM月dd日").format(pm.getFilldate()))
    .append("</td>")
    .append("<td>")
    .append(pm.getMemorabiliacontent())
    .append("</td>")
    .append("</tr>");
   }
   
   sb.append("</table></body></html>");
   response.getWriter().write(sb.toString());

  }
  catch (IOException e) {
   e.printStackTrace();
  }
  catch (Exception e) {
   e.printStackTrace();
  }
  
  return null;
 }

}
出来效果,有表格,希望对需要的朋友有帮助:

利用工具将数据库中的表导出到word中

效果图:         数据库设计说明书中的一项,刚好我负责写这个文档, 18张表,前两张表是自己画表格自己填充内容,写到第三张表的时候就已经崩溃了(我觉得我耐力还是够的,怎么说也画完了两张表呢...
  • JYL15732624861
  • JYL15732624861
  • 2016年09月12日 08:06
  • 509

C#也能动态生成Word文档并填充数据, 导出EXCEL 方法

要使用C#操作word,首先要添加引用:         1、添加引用->COM->Microsoft Word 11.0 Object Library        2、在.cs文件中添加 u...
  • wang463584281
  • wang463584281
  • 2014年03月19日 16:20
  • 1756

将Oracle中的表结构导出到word

SELECT t1.Table_Name AS "表名称", t3.comments AS "表说明", t1.Column_Name AS "字段名称", t1.Data_Type AS "数据类...
  • u011364306
  • u011364306
  • 2015年06月18日 08:01
  • 313

将asp页面导出到WORD

js代码script language="javascript"> function OpenWord()...{ Layer1.style.border=0 ExcelSheet = new Act...
  • xiang588
  • xiang588
  • 2007年05月06日 19:58
  • 1256

FreeMarker生成复杂word(包含图片,表格)

Web项目中生成Word文档的操作屡见不鲜,基于Java的解决方案也是很多的,包括使用Jacob、Apache POI、Java2Word、iText等各种方式,其实在从Office 2003开始...
  • qq_20039385
  • qq_20039385
  • 2016年03月15日 09:07
  • 4745

PowerDesigner使用教程:导出SQLServer数据库表结构到Word

为方便项目文档的编写,使用PowerDesigner将数据库表结构导出。 1、新建一个Model(Categories/Information/PhysicalData) Model na...
  • t_kong
  • t_kong
  • 2014年01月15日 16:58
  • 2516

数据库表结构导出到word文档常用工具

如何把数据库表结构导出为word文档(如下图所示)。 一:PowerDesigner 见其他博文; 二:DBExportDoc 该工具有多个支持 数据库 版本  oracl...
  • kalision
  • kalision
  • 2015年09月22日 10:06
  • 6003

C# 快速导出word

StreamWriter writer = new StreamWriter("D:\a.doc”, false, Encoding.GetEncoding("gb2312")); ...
  • happy09li
  • happy09li
  • 2013年03月05日 11:16
  • 4796

网页内容导出word文档jquery插件

插件描述:jquery.wordexport.js是一款将网页制定标签容器中的文本内容生成并导出word文档插件,借助该jQuery插件,可以将网页内容导出Word文档。 先需要引入jquery,然后...
  • zjmjiang
  • zjmjiang
  • 2017年05月15日 15:11
  • 2328

用phpword导出word文档

//导出成交确认函 public function outputH(){ $start_time1 = strtotime($_POST['start_time1']); ...
  • ning521513
  • ning521513
  • 2017年02月16日 14:14
  • 2117
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:导出到word文档--带有表格
举报原因:
原因补充:

(最多只允许输入30个字)