转自 http://topic.csdn.net/u/20110325/13/28347120-5632-4b31-8f23-eeea6672ce23.html
JDK版本:jdk-6u14-windows-i586.exe
POI版本:poi-bin-3.7-20101029.zip
错误信息:
java.lang.ArrayIndexOutOfBoundsException: -32735
at java.util.ArrayList.get(ArrayList.java:324)
at org.apache.poi.hssf.model.WorkbookRecordList.get(WorkbookRecordList.java:50)
at org.apache.poi.hssf.model.InternalWorkbook.getExFormatAt(InternalWorkbook.java:826)
at org.apache.poi.hssf.usermodel.HSSFCell.<init>(HSSFCell.java:198)
at org.apache.poi.hssf.usermodel.HSSFRow.createCellFromRecord(HSSFRow.java:204)
at org.apache.poi.hssf.usermodel.HSSFSheet.setPropertiesFromSheet(HSSFSheet.java:184)
at org.apache.poi.hssf.usermodel.HSSFSheet.<init>(HSSFSheet.java:121)
at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:275)
at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:188)
at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:170)
at com.sumavision.common.util.ExcelPOI.getExcleRows(ExcelPOI.java:45)
at com.sumavision.common.util.ExcelPOI.main(ExcelPOI.java:18)
源码:ExcelPOI .java
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
public class ExcelPOI {
public static void main(String[] args) {
try {
int count = ExcelPOI.getExcleRows("D:/2011.03.14-24.xls",0);
System.out.println("count="+count);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* Excle某个工作簿所有行数
*
* @param filePath
* Excel文件路径
* @param index
* 第一张工作表的索引是0
* @return int
* @throws FileNotFoundException
* @throws IOException
*/
public static int getExcleRows(String filePath, int index)
throws FileNotFoundException, IOException {
// 创建对Excel工作簿文件的引用
POIFSFileSystem fs =
new POIFSFileSystem(new FileInputStream(filePath));
HSSFWorkbook workbook = new HSSFWorkbook(fs);
// 在Excel文档中,第一张工作表的缺省索引是0
// 其语句为:
HSSFSheet sheet = workbook.getSheetAt(index);
// HSSFSheet sheet = workbook.getSheet("Sheet1");
// 获取到Excel文件中的所有行数
return sheet.getPhysicalNumberOfRows();
}
}
分享到:
相关推荐
内部包括poi-3.8-20120326.jar、poi-ooxml-3.8-20120326.jar、poi-ooxml-schemas-3.8-20120326.jar 测试可用版本,有些下载的不能用
java中读取word文档需要引用apache的poi开源项目包; 官方下载地址:http://poi.apache.org/download.html 为方便下载提供6个jar包,其中包含:poi-3.8.jar;poi-ooxml-3.8.jar;poi-ooxml-schemas-3.8.jar;poi-...
在给定的文件中,"poi-3.8-20120326.jar" 和 "poi-excelant-3.8-20120326.jar" 是Apache POI库的特定版本,主要用于Java环境下读取和写入Excel文件。 Apache POI的核心功能: 1. **Excel文件处理**:Apache POI ...
org.apache.poi:poi:4.1.2 org.apache.poi:poi-ooxml:4.1.2 org.apache.poi:poi-ooxml-schemas:4.1.2 org.apache.xmlbeans:xmlbeans:3.1.0 com.github.virtuald:curvesapi:1.06 com.zaxxer:SparseBitSet:1.2 commons...
导入excel需要的\poi-ooxml-schemas-3.8-20120326.jar
poi-jar包:poi-3.8.jar、poi-3.9.jar、poi-3.16.jar、poi-ooxml-3.9.jar、poi-ooxml-3.16.jar、poi-scratchpad-3.9.jar
解决 java.lang.NoSuchFieldError: STRING at org.jbpm.identity.hibernate.PermissionUserType. 不用jbpm的jbpm-identity.jar 用这个就好
在Java开发中,Apache POI库是处理Excel文件的重要工具,尤其在需要进行大量数据导入导出或自动化报告生成的场景下。"org.apache.poi-ooxml-schemas-3.9.jar" 是这个项目中的一个组件,它包含了用于解析和生成Open ...
这个压缩包包含的是POI项目的不同版本,具体是3.7和3.8版本的jar文件,这些文件主要用于在Java应用程序中读取、写入和修改Office文档。 1. **POI-3.7和3.8版本的区别** - POI 3.7是较早的一个版本,发布于2010年10...
纠结了半天的 java.lang.IllegalStateException: getOutputStream() has already。这个问题困扰了半天,在网上查阅了大量资料 出这个错误一般就是下面2个.....
包含poi-3.7-20101029.jar,poi-examples-3.7-20101029.jar,poi-ooxml-3.7-20101029.jar,poi-ooxml-schemas-3.7-20101029.jar,poi-scratchpad-3.7-20101029.jar,xmlbeans-2.3.0.jar,dom4j-1.6.1.jar,可上传excel2003...
该jar包解决报错java.lang.NoClassDefFoundError: org/apache/james/mime4j/MimeException,亲测可用。
poi-3.8-20120326-6个jar包: poi-3.8-20120326.jar poi-examples-3.8-20120326.jar poi-excelant-3.8-20120326.jar poi-ooxml-3.8-20120326.jar poi-ooxml-schemas-3.8-20120326.jar poi-scratchpad-3.8-20120326....
(2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件; # Maven依赖: ``` <groupId>org.apache.poi <artifactId>poi-ooxml *** ``` # Gradle依赖: ``` ...
导入excel需要的poi-ooxml-3.8-20120326.jar
(2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件; # Maven依赖: ``` <groupId>org.apache.poi <artifactId>poi-ooxml *** ``` # Gradle依赖: ``` ...
poi-3.17 对work、excel操作,包含有: poi-3.17.jar poi-ooxml-3.17.jar poi-scratchpad-3.17.jar poi-ooxml-schemas-3.17.jar commons-codec-1.10.jar commons-collections4-4.1.jar commons-logging-1.2.jar ...
Apache POI 是一个开源项目,专门用于处理Microsoft Office格式的文件,如Word(.docx)、Excel(.xlsx)和PowerPoint(.pptx)。在Java环境中,它提供了一组API,使得开发者能够读取、写入以及操作这些文件。"org....
org.apache.poi.xwpf.converter.pdf-1.0.6.jar 文件 org.apache.poi.xwpf.converter.pdf-1.0.6 org.apache.poi.xwpf.converter.core-1.0.6 org.apache.poi.xwpf.converter-0.9.1
poi 3.7 jar包, 包括poi-3.7-20101029、poi-ooxml-3.7-20101029、poi-ooxml-schemas-3.7-20101029、poi-scratchpad-3.7-20101029