- 浏览: 1229465 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (883)
- Spring (101)
- Swing (1)
- Mysql (21)
- Js (59)
- Jsp (2)
- Hibernate (19)
- Myeclipse (5)
- SqlServer 2000 (2)
- poi (15)
- Java (70)
- SSH (12)
- Html (47)
- Fusion Charts (1)
- C\C++ (2)
- 汇编 (36)
- Jquery (37)
- Struts2 (6)
- Ubuntu (16)
- powerDesinger (4)
- Jboss (3)
- JAX-RS (13)
- JAXB (5)
- JAX-WS (11)
- JMS (4)
- WebSocket (8)
- PHP (16)
- Flash (1)
- maven (3)
- Oracle (8)
- HttpClient (6)
- sqlserver (19)
- svn (5)
- Tomcat (3)
- Jdbc (3)
- EsayUi (11)
- 微信公众平台 (19)
- IIS (2)
- Freemarker (11)
- Comet (1)
- Spring MVC (85)
- JBoss Seam (3)
- 二维码 (9)
- Spring Security (4)
- Ehcache (3)
- Apache Shiro (7)
- jackson (16)
- JPA (8)
- jcaptcha (2)
- RSA (2)
- Ajax (6)
- 跟我学Shiro (0)
- Spring4 (19)
- 跟我学spring3 (0)
- css (32)
- excel (4)
- Filter (3)
- 微信公众帐号开发教程 (0)
- Android (6)
- log4j (6)
- 淘宝接口 (17)
- 支付集成 (3)
- 单点登录 (3)
- Html5 (27)
- 移动平台前端 (3)
- Linux (44)
- FusionCharts (27)
- Json Jackson Xml (5)
- 方培工作室-微信开发 (0)
- Apache与Tomcat与IIS整合 (10)
- Nginx (17)
- webService (2)
- apache (4)
- lucene (3)
- lodop (2)
- Shiro (3)
- zTree (2)
- ireport (12)
- Servlet3.0 (5)
- 前端美工 (19)
- AngularJS (1)
- C#开发微信门户及应用 (0)
- Shell (3)
- bat脚本 (16)
- Bootstrap (26)
- Less (10)
- photoshop (6)
- Redis (6)
- Mongodb (10)
- MyBatis (3)
- 数据结构 (0)
- 读写分离-主从复制 (0)
- JFinal (0)
- 百度地图api (3)
- hadoop-hbase-hive-spark (3)
- WebStorm (2)
- Quartz (5)
- ios (0)
- Mina (8)
- Android Studio (4)
- Ratchet教程 (0)
- 移动端重构系列 (1)
- cubic-bezier贝塞尔曲线CSS3动画工具 (1)
- nginx+tomcat+memcached集群 (0)
- 集群 (0)
- ZooKeeper (3)
- Dubbo (0)
- vpn (0)
- kafka (0)
- JVM垃圾回收机制 (0)
- 微信小程序 (0)
- Lua (0)
- Hystrix (0)
- Vue.js (0)
- mycat (0)
- Openresty (0)
- springBoot (0)
- 新分类 (0)
- guava (0)
- 大数据 (0)
- Sentinel (0)
最新评论
-
JackMacing:
中文怎么解决?
SpringMVC与iReport(JasperReports) 5.6整合开发实例 -
18335864773:
用pageoffice把.可以实现在线的文档操作.直接转pdf ...
转:使用jasperreport动态生成pdf,excel,html -
linhao0907:
推荐一款轻量开源的支付宝组件:https://github.c ...
关于Alipay支付宝接口(Java版) -
songronghu:
太好了,非常有用,谢谢分享~
Java ConcurrentModificationException 异常分析与解决方案 -
wzwahl36:
http://www.atool.org/json2javab ...
Java下利用Jackson进行JSON解析和序列化
接到用Java进行数据库与Excel交换数据的活,到网上看看有什么开源项目没有,还真找到了,主要有POI和JXL,看POI比较火,就下了一个。准备用它做试验。 碰到的两个主要问题是:(1):整数读取写入(2)日期读取与写入 POI没有提供对整数数据的读取,它提供的数据类型有 HSSFCell.CELL_TYPE_BLANK,HSSFCell.CELL_TYPE_BOOLEAN,HSSFCell.CELL_TYPE_ERROR,HSSFCell.CELL_TYPE_FORMULA,HSSFCell.CELL_TYPE_NUMERIC,HSSFCell.CELL_TYPE_STRING。读取的数字类型为double类型,而不是想要的整数,因此要读取整数的解决方法为,以数字类型读取后直接类型转换 (int)Cell2.getNumericCellValue(),或者以字符读取,Integer.parseInt(Cell1.getRichStringCellValue().getString())。 POI对整数的写入也没提供原函数,不过可以直接把整数做为值写入,cell.setCellValue(1000);其实在函数内部它还是将它转换为了浮点数写入了。 POI中给的文档中对日期数据类型的单元格创建代码为 HSSFCellStyle cellStyle = wb.createCellStyle(); cellStyle.setDataFormat(HSSFDataFormat.getBuiltinFormat("m/d/yy h:mm")); cell = row.createCell((short)1); cell.setCellValue(new Date()); cell.setCellStyle(cellStyle); 可是用这样的代码得到的Excel表格,日个类型确实一串数字,大概是表示的是从1900-1-0 0:00到现在的天数,JAVA的Date.getTime()函数获得的时间都会比EXCEL里大,其原因如下: 1.EXCEL的时间参考是1900-1-0 0:00 为1,而java的时间参考是以1900-1-1 0:00 为0,因此java的时间转换出的数值比excel的少1,所以这里要加1; 2.由于EXCEL误以为1900年是闰年(真正的判定法则是:能被4或400整除,但不能被100整除的年份为闰年),所以在这个问题上EXCEL又把天数算多了一天,因此,用JAVA算出来的时间要转化成EXCEL的话要再加多一天,因此是加2 经过换算后,时间数值显示正确了,但是时间格式还不行。如果直接从数据库读取时间写入Excel,数值就不用加2了,但格式就不行了。 后来使用下面的代码创建时间格式就可以了。 HSSFCellStyle cellStyle = workbook.createCellStyle(); short df=workbook.createDataFormat().getFormat("dd/mm/yy"); cellStyle.setDataFormat(df); cell2.setCellValue(wt.getTimeLog()); cell2.setCellStyle(cellStyle); 对于书写不规范的日期,日期格式的单元格有些会识别成数字单元格,如:2009-3-6可以正确识别为日期,但3-6就识别为数字了。 日期读取出来为数字,在Excel表内日期是以数字表表示的,因此要想正确得到日期就要,就要做特殊处理。 首先判断读取出的单元格类型是否为数字类型 ,如果是数字类型在判断使用为日期格式数据,若是,就将得到的数字值转换为日期。 case HSSFCell.CELL_TYPE_NUMERIC: if (HSSFDateUtil.isCellDateFormatted(cell)) { double d = cell.getNumericCellValue(); Date date = HSSFDateUtil.getJavaDate(d); } 读取数据更保险的方法为:先判断类型,更具不同的类型,采用不同的读取方法。 if(Cell2.getCellType()==HSSFCell.CELL_TYPE_NUMERIC) { if(HSSFDateUtil.isCellDateFormatted(Cell2)) { double d=Cell2.getNumericCellValue(); watchData.setTimeLog(HSSFDateUtil.getJavaDate(d)); } }else if (Cell2.getCellType()==HSSFCell.CELL_TYPE_STRING) { SimpleDateFormat sFormat=new SimpleDateFormat("dd-MM-yyyy"); watchData.setTimeLog(sFormat.parse(Cell2.getRichStringCellValue().getString())); } else{ watchData.setTimeLog(Cell2.getDateCellValue()); } 如果用的是Jxl,可以将cell.getCellFormat 强制转换成 XFRecord。然后判断XFRecord.formatIndex 如果等于 58就是DateCell。 if (cell.getType() == CellType.NUMBER) { NumberCell nc = (NumberCell) cell; XFRecord xfr = (XFRecord) nc.getCellFormat(); final int INDEX_OF_DATE = 58 ; if (xfr.formatIndex == INDEX_OF_DATE) { Date date = HSSFDateUtil.getJavaDate(nc.getValue()); content = dateformat.format(date); } }
发表评论
-
POI 读取word (word 2003 和 word 2007)
2016-05-16 10:55 1199最近在给客户做系统的时候,用户提出需求,要能 ... -
JexcelApi和POI导入Excel日期识别成数字的解决方案
2014-12-07 20:01 560用过Jxl或者POI导入Excel信息的朋友应该都遇到过这样 ... -
POI对Excel自定义日期格式的读取
2014-12-07 13:15 807用POI读取Excel数据:(版本号:POI3.7) 1、 ... -
POI解析Excel2007
2014-12-07 13:16 649Poi解析excel2007代码 p ... -
SpringMVC:生成Excel和PDF
2014-12-13 10:22 777参考资料 1 用spring MVC 生成Excel和PD ... -
spring MVC 导出excel
2014-10-21 16:13 535// 导出excel方法 @Requ ... -
POI 合并单元格 及 注意事项
2014-10-20 09:20 2688POI进行跨行需要用到对象HSSFSheet对象,现在就当我 ... -
POI实现Excel插入多张图片(转)
2013-04-12 10:12 1409POI的操作Excel时,不可避免有操作图片的处理。怎么插入 ... -
使用POI 读取 Excel 文件,读取手机号码 变成 1.3471022771E10 如何 解决?
2013-04-08 15:13 1978解决了 是一个转换问题 //将被表示成1.392243 ... -
宿舍管理系统
2012-03-04 00:26 1915项目名称 宿舍管理系统 开发工具 MyEclipse6.0+ ... -
jsp利用POI直接生成Excel并在页面提示打开下载
2011-11-22 16:57 2026java中导出Excel有两个组件可以使用,一个是jxl,一个 ... -
用POI在JSP中生成Excel报表
2011-11-14 23:05 2518在servlet、javaBean、。。。中生成一个HSSFW ... -
poi设置行高列宽
2011-09-20 23:38 5446前些天写了一篇用POI导出Excel遇到的一个怪异的问题,今天 ... -
用POI读写Excel
2011-09-19 20:52 1053大家注意,请用最新 ...
相关推荐
Java POI 实现 Excel 导入导出 Java POI 是一个流行的 Java 库,用于处理 Microsoft Office 文件格式,包括 ...在本文中,我们已经详细介绍了如何使用 Java POI 实现 Excel 导入导出功能,包括读取和写入 Excel 文件。
Java 使用 POI 读取 Excel 文件 Java 是一种广泛使用的编程语言,而 Excel 是一种常用的电子表格软件。有时候,我们需要在 Java 程序中读取 Excel 文件的内容,例如将 Excel 表格中的数据导入到数据库中或者进行...
本文将详细介绍如何使用POI库在Java中进行Excel的读写操作,以及一个在Eclipse环境中运行的实例。 首先,我们需要了解Apache POI的基本概念。POI是Apache软件基金会的一个开源项目,它提供了Java API来处理...
在Java中,它允许开发者创建、修改和读取Excel工作簿、工作表以及单元格的数据。POI库不仅支持基本的文本和数字操作,还支持更高级的功能,如公式计算、样式设置和图表创建。 2. **创建Excel图表** 要生成Excel图表...
要实现"利用POI读取excel写入到word",我们需要以下步骤: 1. **准备环境**:首先,确保你的项目已经引入了Apache POI的依赖。在给定的压缩包中,"poi - 副本"可能是包含POI库的JAR文件,你需要将其添加到你的项目...
本教程将详细介绍如何利用Java POI来读取Excel文件。 首先,你需要在项目中引入Apache POI的相关依赖。如果是Maven项目,可以在pom.xml文件中添加以下依赖: ```xml <groupId>org.apache.poi <artifactId>poi ...
接下来,我们需要创建一个Java程序来读取Excel文件。使用POI的`XSSFWorkbook`类打开Excel文件,然后通过` XSSFSheet `获取工作表,并使用` XSSFRow `和` XSSFCell `遍历单元格数据: ```java import org.apache.poi...
java读写Excel,POI.JAR,Word内容读取
总结来说,这个项目展示了如何利用Java的Apache POI库读取Excel数据,结合XML解析进行数据验证,最后将验证通过的数据导入到数据库。这个过程涉及到文件I/O、XML处理、数据验证、数据库操作等多个核心Java技术,对于...
在这个"利用POI解析excel并存入数据库demo"中,我们将关注如何使用 POI 库来读取 Excel 文件,并将数据有效地存入 MySQL 数据库。 首先,要开始使用 POI,你需要在你的项目中引入相应的依赖。如果你使用的是 Maven...
Java 使用 Apache POI 读取 Excel 是一个常见的任务,在处理数据导入、导出或数据分析时非常有用。Apache POI 是一个流行的开源库,它允许 Java 开发者创建、修改和显示 Microsoft Office 格式的文件,其中包括 ...
在标题和描述中提到的"java利用poi操作excel所需要的jar包"是POI项目的核心依赖,包括以下几个部分: 1. **poi-3.14.jar**: 这是Apache POI的主要库,提供了对低级HSSF(Horrible Spreadsheet Format)的支持,用于...
在这个场景中,我们将详细探讨如何使用Java POI读取Excel文件中的数据,包括获取总行数、列数、单元格内容、合并单元格、行高、列宽以及图片等信息。 首先,确保在项目中已经引入了Apache POI的依赖库。如果你使用...
以下是对"java中poi读写excel封装工具类"这一主题的详细解释。 1. **Apache POI介绍** Apache POI是一个开源项目,允许Java开发者创建、修改和显示Microsoft Office文件,包括Excel、Word和PowerPoint。它的核心...
读取Excel文件时,首先需要使用POI的FileInputStream打开文件,然后创建与文件类型对应的Workbook实例。之后,通过Workbook获取Sheet,再通过Sheet获取Row和Cell,读取其值。 7. 遍历数据 遍历Excel文件通常需要...
1、POI_EXCEL包下分别有两个类,一个是读取excel内容,一个是想excel写入内容 2、cn.itcast包下的所有包,是为了实现从excel写入到数据库中,和从数据库写入到excel中 注意事项: 1、需要导入maven工程 2、使用...
使用 POI 读取 Excel 需要首先了解 Excel 文件的组织形式,然后使用 POI 提供的对象来读取 Excel 文件。下面是一个简单的例子: ```java import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache....
Java中的Apache POI库是处理Microsoft Office格式文件的利器,特别是用于读取和写入Excel文件。本主题将深入探讨如何使用POI库导出EXCEL表格,以及如何结合提供的关键代码实现这一功能。 首先,我们需要理解Apache ...
本文将深入探讨如何使用Java的Apache POI库来读取Excel文件,并处理其中合并单元格的数据,同时将这些数据存储到实体类中以供后续使用。 Apache POI是一个强大的库,允许程序员使用Java来创建、修改和显示Microsoft...
读取Excel文件涉及到打开工作簿,获取工作表,然后迭代行和单元格。以下是一个简单的读取示例: ```java import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFWorkbook; ...