excel导入 HSSFWorkbook和XSSFWorkbook

excel导入

excel版本有03版本和07版本的区别,文件后缀名分别为.xls和.xlsx。它们对应的POI中的Workbook也是不同的,分别是HSSFWorkbook和XSSFWorkbook;

对于不同版本的EXCEL文档要使用不同的工具类,如果使用错了,会提示如下错误信息。

org.apache.poi.openxml4j.exceptions.InvalidOperationException
org.apache.poi.poifs.filesystem.OfficeXmlFileException

可以采用对文件后缀名判断的方法,判断具体生成哪一个对象,也可以采用如下代码:

public static Workbook create(InputStream in) throws
    IOException,InvalidFormatException {
    if (!in.markSupported()) {
        in = new PushbackInputStream(in, 8);
    }
    if (POIFSFileSystem.hasPOIFSHeader(in)) {
        return new HSSFWorkbook(in);
    }
    if (POIXMLDocument.hasOOXMLHeader(in)) {
        return new XSSFWorkbook(OPCPackage.open(in));
    }
    throw new IllegalArgumentException("你的excel版本目前poi解析不了");
}
时间: 2024-10-11 18:14:01

excel导入 HSSFWorkbook和XSSFWorkbook的相关文章

POI实现excel导入导出

1.分析excel import org.apache.poi.hssf.usermodel.*; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.util.Ce

[Utils]POI实现excel导入导出

1.分析excel 2.poi工具类 import org.apache.poi.hssf.usermodel.*; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.s

不依赖Excel是否安装的Excel导入导出类

本文利用第三方开源库NPOI实现Excel97-2003,Excel2007+的数据导入导出操作. 不依赖Office是否安装.NPOI开源项目地址:http://npoi.codeplex.com/. 库文件下载:http://npoi.codeplex.com/releases/view/115353 using System; using System.Collections; using System.Collections.Generic; using System.Data; usi

nopi excel 导入

1 #region 从Excel导入 2 /// <summary> 3 /// 读取excel ,默认第一行为标头 4 /// </summary> 5 /// <param name="strFileName">excel文档路径</param> 6 /// <returns></returns> 7 public static DataTable ExcelImport(string strFileName)

java Excel 导入导出

使用poi实现springMVC的Excel导入导出 需要jar包:poi.jar    poi-ooxml.jar    poi-ooxml-schemas.jar    xbean.jar(用于解析excel2007) controller层导出: 1 // 导出excel 2 if (action != null && action.equals("export")) { 3 List<LoadPriceShipownerQueryItem> expo

《.NET学习笔记》——使用NPOI读取Excel导入数据和导出Excel的功能

前提:由于有差不多两年时间没有进行B/S项目开发了,换了新工作,项目中要求有Excel导入数据库的功能,故保存下来供以后查看. 一.使用jQuery的uploadify插件完成选择文件并上传的功能: (1)先引入相关文件: <script src="../Scripts/uploadify/swfobject.js" type="text/javascript"></script> <link href="../Scripts

poi之excel导入

获取list数据: import java.io.BufferedInputStream; import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.util.ArrayList; import java.util.Dat

SSH系列:(11)用户管理-Excel导入、导出

这里用了POI组件,需要引入的jar包有: curvesapi-1.03.jar poi-3.14-20160307.jar poi-ooxml-3.14-20160307.jar poi-ooxml-schemas-3.14-20160307.jar xmlbeans-2.6.0.jar 参考: POI组件:POI操作Excel http://lsieun.blog.51cto.com/9210464/1836601 1.用户列表导出成Excel 1.1.listUI.jsp UI部分 <in

mvc手把手教你写excel导入

实习狗的每天新知识日常 准备工作: 1.在项目中添加对NPOI的引用,NPOI下载地址:http://npoi.codeplex.com/releases/view/38113 2.NPOI学习系列教程推荐:http://www.cnblogs.com/tonyqus/archive/2009/04/12/1434209.html NPOI下载,里面有五个dll,需要引用到你的项目,我这边用的mvc4+三层的方式架构的项目 我用的工具是(vs2012+sql2014) 准备工作做完,我们开始进入