有关 poi 读 excel 中的一些问题
来源:互联网 发布:linux shell cut 编辑:程序博客网 时间:2024/05/22 04:34
有关 poi 读 excel 中的一些问题 :
读取 excel 2003-2007 和 2007以后版本 兼容问题 解决单元格日期格式读取 处理方式
读取 excel 2003-2007 和 2007以后版本 兼容问题 解决
目前操作方式如下:
try { org.apache.poi.hssf.record.crypto.Biff8EncryptionKey .setCurrentUserPassword(password); inp = new FileInputStream(path); //这个地方必须new一个新的 否则出现exception 流就会被强制关闭 workbook = WorkbookFactory.create(inp); }catch(Exception e){ inp = new FileInputStream(path);//这个地方必须new一个新的 否则出现exception 流就会被强制关闭 POIFSFileSystem pfs = new POIFSFileSystem(inp); EncryptionInfo encInfo = new EncryptionInfo(pfs); Decryptor decryptor = Decryptor.getInstance(encInfo); decryptor.verifyPassword(password); workbook = new XSSFWorkbook(decryptor.getDataStream(pfs)); }finally{ if(inp != null){ inp.close(); } }
单元格日期格式读取 处理方式 :
处理如下:
1 处理XSSFCell
if (DateUtil.isCellDateFormatted(cell)) { //Excel Date类型处理 Date date = DateUtil.getJavaDate(cell.getNumericCellValue()); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); return sdf.format(date);}else{ cell.setCellType(1); return cell.getStringCellValue();}
2 处理HSSFCell
if (HSSFDateUtil.isCellDateFormatted(cell)) { //Excel Date类型处理 Date date = HSSFDateUtil.getJavaDate(cell.getNumericCellValue()); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); return sdf.format(date);}else{ cell.setCellType(1); return cell.getStringCellValue();}
后续再做更新 以上为本人实践 如有不当之处 欢迎指正 欢迎交流!
0 0
- 有关 poi 读 excel 中的一些问题
- poi导出excel中的问题
- poi excel一些参数设置
- 请教excel使用中的有关问题
- POI操作Excel一些中文问题的解决方法
- POI操作Excel一些中文问题的解决方法
- 使用POI进行Excel导入时解决的一些问题
- 有关于java中的一些容器问题
- 有关献血过程中的一些问题
- poi excel版本问题
- poi处理excel问题
- POI读取EXCEL中的日期
- POI 隐藏EXCEL中的图形
- POI执行EXCEL中的公式
- java excel poi导出问题
- POI读写Excel格式问题
- 在asp.net页面中的一些有关编码的问题
- 在asp.net页面中的一些有关编码的问题
- java的锁机制
- 微信订阅号和服务号再探究竟
- Atitit View事件分发机制
- Android实现计时与倒计时(限时抢购)的几种方法
- Qt之进程间通信(共享内存)
- 有关 poi 读 excel 中的一些问题
- 合并文档时让第一页为奇数
- div设置float后下一个div要换行的解决办法
- POJ 3414 Pots
- 切换具有SYSTEM权限的控制台或桌面
- ZCMU—1132
- 9号笔记
- web开发字符乱码总结
- 适配器设计模式,简单的Java代码模拟