通过对format值的判断调用格式化日期类型值。如下:

 int dformat = hssfCell.getCellStyle().getDataFormat();  
	    		    SimpleDateFormat sdf = null;  
	    		    if(Arrays.asList(14,178,192,194,208,196,210).contains(dformat)) {
	    		    		sdf=new SimpleDateFormat("yyyy-MM-dd");
	    		    }else if(Arrays.asList(190,191).contains(dformat)) {
	    		    	sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm");
	    		    }else if(Arrays.asList(177,182,185).contains(dformat)) {
	    		      	sdf=new SimpleDateFormat("yyyy年MM月dd日");
	    		    }else if(Arrays.asList(183,186).contains(dformat)) {
	    		    	sdf=new SimpleDateFormat("yyyy年MM月");
	    		    }else if(Arrays.asList(183,200,201,202,203).contains(dformat)) {
	    		      	sdf=new SimpleDateFormat("HH:mm");
	    		    }else if(Arrays.asList(204,205,206,207,208).contains(dformat)) {
	    		      	sdf=new SimpleDateFormat("HH时mm分");
	    		    }else if(Arrays.asList(184,187).contains(dformat)) {
	    		     	sdf=new SimpleDateFormat("MM月dd日");
	    		    }else {
	    		    	sdf=new SimpleDateFormat("yyyy-MM-dd");
	    		return sdf.format(hssfCell.getDateCellValue());
这是一个 POI 读取 word 2003 和 word 2007的例子 是一个Eclipse工程 下载后直接导入工程 运行 src 目录下的 Test java 类即可 这个 rar 包 包含着 POI 读取 word 2003 和 word 2007 所需要的 jar 包 也有需要 读取 的 word 2003 和 word 2007 示例文件 值得注意的是 POI 读取 word 文件的时候不会 读取 word 文件 的图片信息 还有就是对于 2007 版的 word docx 如果 word 文件 有表格 所有表格 的数据都会在 读取 出来的 字符串 的最后 ">这是一个 POI 读取 word 2003 和 word 2007的例子 是一个Eclipse工程 下载后直接导入工程 运行 src 目录下的 Test java 类即可 这个 rar 包 包含着 POI 读取 word 2003 和 word 2007 所需要的 jar 包 也有需要 读取 的 word 2003 和 word 2007 示例文件 [更多] 问题描述: 无法连接发布自定义 字符串 处理程序,不能进行输出缓存处理。IIS 实例 ID 为“1772638466”, URL 为“http://XXXX.XXX.XXX/EnglishWorld/Default.aspx”。 有关更多信息,请参阅在 http://go.microsoft.com/fwlink/events.asp 的帮助和支持 心。 在系统日志大片出现(除了URL不同),但貌似对系统没什么影响,能正常使用. 此问题不会影响正常使用,但日志很快就满了 前提说明: EnglishWorld项目以虚拟目录的方式部署在使用的Share poi nt站点下,文件放置位置: C:\Progr 7.3.3 POI Excel 文件Cell的类型<br />在 读取 每一个Cell的值的时候,通过getCellType方法获得当前Cell的类型,在 Excel Cell有6种类型,如表7-3所示。<br />表7-3 Cell的类型<br />CellType<br />说明<br />CELL_TYPE_BLANK<br />空值<br />CELL_TYPE_BOOLEAN<br />布尔型<br />CELL_TYPE_ERROR<br />错误<br />CELL_TYPE_FORMULA<br / Excel 日期 ,时间 格式 都是数值类型的。 Excel 单元 格式 有几种常用类型,数字类型:HSSFCell.CELL_TYPE_NUMERIC, 字符串 类型:HSSFCell.CELL_TYPE_STRING,空格:HSSFCell.CELL_TYPE_BLANK,布尔类型:HSSFCell.CELL_TYPE_BOOLEAN,公式:HSSFCell.CELL_TYPE_FORMULA。 首先进行... 这是 poi 解析出来的这个 日期 的结果: 我们期望这个 日期 解析出来是:2015/8/21,而结果却是42237.什么原因呢?这个数字是什么呢?是以1900年为原点,到2015年8月21日,之间经过的天数。 知道这个后,就很好处理了,我们拿到1900年的 日期 ,在这个 日期 上加上 用 POI 读取 Excel 数据:(版本号: POI 3.7) 1、 读取 Excel private List&lt;String[]&gt; rosolveFile(InputStream is, String suffix, int startRow) throws IOException, FileNotFoundException { Workbook xssfWorkbook = ... import org.apache. poi .hssf.usermodel.HSSFWorkbook; import org.apache. poi .ss.usermodel.Cell; **背景:**最近老是在做 poi 导入,导出相关的功能,期间遇到一个导入 日期 不能转换的问题。 具体如下: 需求: 将这个导入模板的数据导入到oracle数据库 。导入模板模板 日期 格式 如图: 可以看到,在表格 日期 格式 是 yyyy年MM月这样的,二查看上述栏:发现是2016/6/1这种的。所以可以得出这个单元格是设置了 日期 格式 的。 调试过程: 首先我是这样想的,使用 poi 进行解析然后将会获得的如2019年10月这样的 字符串 ,然后进行截取转换为2019-10然后使用SimpleDateFormat类重新 格式 Java 读取 Excel 表格 日期 类型数据的时候,读出来的是这样的 12-十月-2019,而 Excel 输入 的是 2019/10/12 或 2019-10-12 poi 处理 excel 时,当 excel 没有明确指明是哪个类型的数据时, poi 很可能处理单元格的 日期 数据时就有可能是一串数字,而使用java程序基本无法转换。 为了解决以上的问题,本人收集了各种资料,目前来总结一下,供碰到此类问题的你作参考。 Excel 数据处理: Excel 存储 日期 、时间均以数值类型进行存储, 读取 POI 先判断是是否是数值类型. private static Object getCellValue(Cell cell, Workbook workbook) { Object value = ""; if (cell != null) { try { // 判断类型.