- 浏览: 584504 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (423)
- windows2003 (1)
- exception (3)
- java (91)
- eclipse (14)
- java web (3)
- javaScript (11)
- 装机 (1)
- sql (34)
- outlook (1)
- html (8)
- JAVA 不同区域服务器引起的乱码解决 (2)
- strtus (3)
- http (1)
- 设计模式 (4)
- Java对存储过程的调用方法 (0)
- java-数据库操作 (0)
- jdbc (7)
- dwr (2)
- 软件版本号 (1)
- jxls (1)
- ExtJS (3)
- Ajax (1)
- git (12)
- linux (20)
- mysql (14)
- maven (16)
- easyui (1)
- 日常备注 (1)
- spring (9)
- others (1)
- windows快捷键 (1)
- 工作备注 (9)
- 工作杂项 (0)
- photoshop (1)
- 开发环境配置 (0)
- jboss (1)
- 报表 (1)
- 图表 (1)
- fckeditor (1)
- 调试bug (2)
- 口令 (1)
- css (2)
- mongodb (7)
- restful (1)
- jsp (5)
- jpa (2)
- bug (1)
- js (2)
- Json (1)
- POI (1)
- xml (2)
- webstorm (1)
- java swing (1)
- ubuntu (3)
- mongo (27)
- 自我学习 (0)
- 草稿 (0)
- 单元测试 (1)
- 数据库 (2)
- ide (1)
- 大数据 (0)
- uml (1)
- spring-boot (1)
- mybatis (3)
- oracle (2)
- jetty (1)
- 学习 (0)
- 系统调优 (1)
- tomcat (2)
- kettle (1)
- 学习资源 (1)
- 架构 (2)
- database (4)
- idea (1)
- consul (1)
- hadoop (2)
- nginx (3)
- 认证 (1)
- 加密 (1)
- connection pool (1)
- loadrunner (1)
- tps (1)
- 翻墙工具 (1)
- redis (2)
- redis jedis shardjedis (1)
- spring boot (1)
- 认证授权 (1)
- ssh (1)
- svn (2)
- 多线程 (1)
最新评论
-
abcdeudi:
不错
接口和抽象类什么时候使用才合适? -
羽翼的心动:
POI中对Word处理,读取不到书签。如果要处理书签的话,就只 ...
POI根据模板(excel表头)导出excel -
pdf1192012:
高质量文章
接口和抽象类什么时候使用才合适? -
沐忆潼:
...
POI根据模板(excel表头)导出excel -
422937561:
高质量文章
接口和抽象类什么时候使用才合适?
以下摘自:http://wenku.baidu.com/view/b9023573b307e87101f6965f.html
package com.cvt.smarthome.application.basedata.utils; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.Calendar; import java.util.Date; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.poifs.filesystem.POIFSFileSystem; import org.apache.poi.ss.usermodel.RichTextString; /** * 共分为六部完成根据模板导出excel操作:<br/> * 第一步、设置excel模板路径(setSrcPath)<br/> * 第二步、设置要生成excel文件路径(setDesPath)<br/> * 第三步、设置模板中哪个Sheet列(setSheetName)<br/> * 第四步、获取所读取excel模板的对象(getSheet)<br/> * 第五步、设置数据(分为种类型数据:setCellStrValue、setCellDateValue、setCellDoubleValue、setCellBoolValue、setCellCalendarValue、 * setCellRichTextStrValue)<br/> * 第六步、完成导出 (exportToNewFile)<br/> * * @author Administrator * */ public class ExcelUtil { private String srcXlsPath = ""; // // excel模板路径 private String desXlsPath = ""; private String sheetName = ""; POIFSFileSystem fs = null; HSSFWorkbook wb = null; HSSFSheet sheet = null; /** * 第一步、设置excel模板路径 * * @param srcXlsPath */ public void setSrcPath(String srcXlsPath) { this.srcXlsPath = srcXlsPath; } /** * 第二步、设置要生成excel文件路径 * * @param desXlsPath */ public void setDesPath(String desXlsPath) { this.desXlsPath = desXlsPath; } /** * 第三步、设置模板中哪个Sheet列 * * @param sheetName */ public void setSheetName(String sheetName) { this.sheetName = sheetName; } /** * 第四步、获取所读取excel模板的对象 */ public void getSheet() { try { File fi = new File(srcXlsPath); if (!fi.exists()) { System.out.println("模板文件:" + srcXlsPath + "不存在!"); return; } fs = new POIFSFileSystem(new FileInputStream(fi)); wb = new HSSFWorkbook(fs); sheet = wb.getSheet(sheetName); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } /** * 第五步、设置字符串类型的数据 * * @param rowIndex * --行值 * @param cellnum * --列值 * @param value * --字符串类型的数据 */ public void setCellStrValue(int rowIndex, int cellnum, String value) { HSSFCell cell = sheet.getRow(rowIndex).getCell(cellnum); cell.setCellValue(value); } /** * 第五步、设置日期/时间类型的数据 * * @param rowIndex * --行值 * @param cellnum * --列值 * @param value * --日期/时间类型的数据 */ public void setCellDateValue(int rowIndex, int cellnum, Date value) { HSSFCell cell = sheet.getRow(rowIndex).getCell(cellnum); cell.setCellValue(value); } /** * 第五步、设置浮点类型的数据 * * @param rowIndex * --行值 * @param cellnum * --列值 * @param value * --浮点类型的数据 */ public void setCellDoubleValue(int rowIndex, int cellnum, double value) { HSSFCell cell = sheet.getRow(rowIndex).getCell(cellnum); cell.setCellValue(value); } /** * 第五步、设置Bool类型的数据 * * @param rowIndex * --行值 * @param cellnum * --列值 * @param value * --Bool类型的数据 */ public void setCellBoolValue(int rowIndex, int cellnum, boolean value) { HSSFCell cell = sheet.getRow(rowIndex).getCell(cellnum); cell.setCellValue(value); } /** * 第五步、设置日历类型的数据 * * @param rowIndex * --行值 * @param cellnum * --列值 * @param value * --日历类型的数据 */ public void setCellCalendarValue(int rowIndex, int cellnum, Calendar value) { HSSFCell cell = sheet.getRow(rowIndex).getCell(cellnum); cell.setCellValue(value); } /** * 第五步、设置富文本字符串类型的数据。可以为同一个单元格内的字符串的不同部分设置不同的字体、颜色、下划线 * * @param rowIndex * --行值 * @param cellnum * --列值 * @param value * --富文本字符串类型的数据 */ public void setCellRichTextStrValue(int rowIndex, int cellnum, RichTextString value) { HSSFCell cell = sheet.getRow(rowIndex).getCell(cellnum); cell.setCellValue(value); } /** * 第六步、完成导出 */ public void exportToNewFile() { FileOutputStream out; try { out = new FileOutputStream(desXlsPath); wb.write(out); out.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
评论
2 楼
羽翼的心动
2017-01-05
POI中对Word处理,读取不到书签。如果要处理书签的话,就只能使用Jacob,但是使用Jacob的话,要求服务器端必须安装微软的Office软件,这样做有两个致命的地方:1. 服务器如果是Linux的话,肯定不能使用;2. Jacob使用的是Office的自动化技术,很容易在服务器上产生Office的死进程,死锁服务器端的内存资源,直到内存耗尽,宕机重启。而且POI的代码非常复杂。
推荐楼主使用PageOffice产品,导入导出word,excel都很方便,代码非常少。PageOffice还可以在线编辑保存动态填充word,excel文档呢。
推荐楼主使用PageOffice产品,导入导出word,excel都很方便,代码非常少。PageOffice还可以在线编辑保存动态填充word,excel文档呢。
1 楼
沐忆潼
2016-06-13
发表评论
-
文件上传
2017-02-05 09:47 404文件上传模块 -
@ModelAttribute注解的使用
2017-01-09 23:13 534https://my.oschina.net/u/176085 ... -
数组合并和判断数组包含某个元素
2017-01-09 23:10 536http://www.iteye.com/news/28296 ... -
项目创建流程
2017-01-09 23:06 399http://lion.newtouch.com/pages/ ... -
mysql 出现很多连接 sleep 问题
2017-01-09 23:00 704http://blog.csdn.net/lin_credib ... -
spring boot 学习
2016-11-28 17:05 376http://412887952-qq-com.iteye.c ... -
jxls excel上传数据
2016-11-22 15:27 548http://jxls.sourceforge.net/ref ... -
veloctiyengine gettemplate jsonobject.fromobject
2016-11-18 10:41 0/** 53. * test User 54. ... -
HDFS客户端的权限错误:Permission denied
2016-08-09 01:55 626http://www.linuxidc.com/Linux/2 ... -
java map中的key为object
2016-08-08 11:18 526http://zhidao.baidu.com/link?ur ... -
jdbc pool
2016-07-26 14:50 404[url]C:\Users\lwx328240\Desktop ... -
java 域是指什么
2016-07-15 15:36 525http://blog.csdn.net/iaiti/arti ... -
java jdbc/ojdbc 链接oracle的三种方式
2016-07-12 14:50 575http://blog.itpub.net/22664653/ ... -
java 编译器 解释器
2016-06-28 14:45 7120) javac 编译器 用于将java源代码文件编译成字节码 ... -
linux查看cpu、内存、版本信息
2016-06-24 21:44 538http://blog.chinaunix.net/uid-2 ... -
重定向控制台System.out.println输出到文件,再重定向回控制台
2016-06-24 20:18 507http://blog.csdn.net/jason_deng ... -
java 代码点 代码单元
2016-06-24 09:38 719http://blog.csdn.net/weizhaozhe ... -
java 日期
2016-06-24 09:39 346http://kingquake21.iteye.com/bl ... -
jdbc addBatch
2016-06-23 22:08 398http://www.360sdn.com/java/2014 ... -
java中的arrayList(动态数组)与静态数组
2016-06-21 20:26 944http://www.2cto.com/kf/201206/1 ...
相关推荐
### POI 基于模板导出 Excel 的实现方法 #### 概述 Apache POI 是一个用于读写 Microsoft Office 格式文件的 Java 库,其中包括对 Excel 文件的支持。在实际开发过程中,经常会遇到需要根据现有的 Excel 模板来...
在这个特定的例子中,我们将讨论如何使用POI库基于一个Excel模板文件循环输出数据行,并将结果导出为新的Excel文件。 首先,我们需要理解POI库的基本概念。POI提供了HSSF(Horizontally SpreadSheet Format)和XSSF...
标题中的“POI实现的基于动态模板的EXCEL数据导出”是指利用Apache POI库来创建一个可以动态填充数据的Excel模板,从而实现大量数据的高效导出。Apache POI是一个开源项目,它允许Java开发者读写Microsoft Office...
在IT行业中,Excel作为一种强大的电子表格工具,常用于数据分析、报告制作和数据交换。"Excel导出数据(根据Excel模板定义)...使用Apache POI库,我们可以实现根据预设模板动态生成和导出Excel文件,满足各种业务需求。
在本示例中,我们关注的是如何利用Java POI来根据模板生成.xlsx格式的Excel文件。这个过程涉及到对Excel模板的理解、读取、修改以及最终的保存。 首先,理解模板文件是关键。一个.xlsx模板文件实际上是由一系列XML...
这篇博客"java使用POI Excel模板导出数据"探讨了如何利用POI库在Java中创建Excel模板并填充数据。下面将详细介绍这个过程以及相关知识点。 首先,我们需要理解Apache POI的基本概念。POI是Apache软件基金会的一个...
EasyExcel不仅提供了简单易用的API,而且支持动态表头,使得在导出Excel时可以根据业务需求自定义头部结构,增加了程序的灵活性和适应性。 在传统的Excel导出方式中,通常需要通过硬编码的方式来设定Excel的表头和...
Java通过Apache POI库导出Excel是常见的数据处理任务,特别是在大数据分析、报表生成和数据交换等场景。Apache POI是Java中广泛使用的库,它允许开发者读取、写入和修改Microsoft Office格式的文件,包括Excel(XLS...
"基于POI+XML配置模板Excel导出"是一个解决方案,它结合了Apache POI库和XML配置模板来简化这一过程。Apache POI是Java中用于读写Microsoft Office格式文档的开源库,而XML配置模板则使得Excel的格式设定变得灵活且...
Java中也有Apache POI库,可以直接操作Excel文件,实现多表头的创建和导出。 总结来说,掌握复杂多表头Excel表格的创建和导出技巧,能有效提高数据管理和分析的效率。无论是手动操作还是编程实现,理解并熟练运用...
在Java编程中,导出数据到Excel文件是一项常见的任务,特别是在数据分析、报表...通过以上步骤,我们可以构建一个灵活且高效的Java程序,将数据库中的数据导出为具有多级表头的Excel文件,满足数据分析和报告的需求。
首先,`jxls2`是一个强大的Java库,它扩展了Apache POI库的功能,使得开发者能够以声明式的方式来定义Excel模板,并将Java对象的数据填充到模板中,生成动态的Excel报表。这种工作方式极大地简化了Excel导出的编程...
在这个场景中,我们将讨论如何使用 POI 在 Java 中生成带有下拉选项和批注的 Excel 模板。 首先,我们需要理解 POI 的核心组件,如 HSSFWorkbook(用于 .xls 文件)和 XSSFWorkbook(用于 .xlsx 文件)。这些工作簿...
在你提到的场景中,"POI模板导出"可能是一个包含预设模板和相关代码的项目。这个项目可能已经封装了创建复杂表头的逻辑,使用者只需要传入数据,即可生成符合要求的Excel文件。由于你提供了可以直接运行的jar包,这...
在本场景中,我们可以通过自定义注解来标注字段,以便在导出Excel时根据注解内容生成对应的表头。 接下来,我们谈谈反射(Reflection)。反射是Java的一项强大特性,允许程序在运行时检查类、接口、字段和方法的...
EasyPOI是一个基于Apache POI的轻量级Java库,它简化了Excel文件的读写操作,特别是对于批量处理和模板导出功能。这篇博文的源码提供了一个使用EasyPOI导出包含图片的Excel模板数据的示例,这在报表生成、数据分析和...
在本文中,我们将深入探讨如何使用SpringBoot和Apache POI库来导出指定格式的Excel模板。Apache POI是Java领域广泛使用的库,用于读写Microsoft Office格式的文件,其中包括Excel(.xlsx 和 .xls)文件。SpringBoot...
在这个例子中,我们将探讨如何使用POI库来处理Word文档,特别是利用模板文件循环输出表格行并导出新的Word文档。这个过程在数据分析、报告生成或自动化文档制作等场景中非常有用。 首先,我们需要理解Word文档的...
模板管理中有一个导出模板功能,可以将模板导出到Excel表格中。模板下可以嵌套的是指标或模板,但是模板的最底层必定是指标。然而,在导出过程中存在三个问题: 1. 模板/指标定位位置的问题 2. 编码过程中,出现Row...
标题中的"POI使用模板导出.zip"表明这是一个关于使用Apache POI库在Java中处理Excel模板并导出带有复杂表头(合并行和合并列)的案例。Apache POI是一个流行的开源库,专用于读取和写入Microsoft Office格式的文件,...