Java程序从excel文件中读取数据会引发错误。需要帮助解决

时间:2013-12-01 08:15:48

标签: java eclipse excel apache

我正在使用XSSF用户模型读取excel文件中的数据并进行打印。我已将所有POI Jar文件添加到Java Build Path中 - >库。但我仍然得到同样的错误。请帮我解决这个问题。 包com.javalab.sample;

import java.io.*;
import java.util.Iterator;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;


public class ReadFromExcel3 {

public static void main(String[] args)  {
try {

File excel1 = new File ("C:\\TestData\\test.xlsx");
FileInputStream fis1 = new FileInputStream(excel1);

XSSFWorkbook xssfWork = new XSSFWorkbook(fis1);
XSSFSheet sheet1 = xssfWork.getSheetAt(0);
Iterator<Row> rowItr = sheet1.rowIterator();

while ( rowItr.hasNext() ) 
{
    XSSFRow row = (XSSFRow) rowItr.next();
    System.out.println("ROW:-->");
    Iterator<Cell> cellItr = row.cellIterator();

    while ( cellItr.hasNext() ) 
    {
        XSSFCell cell = (XSSFCell) cellItr.next();
        System.out.println("CELL:-->"+cell.toString());
    }
}
} 

catch (Exception e) 
{
   e.printStackTrace();
}

}
}

异常

Exception in thread "main" java.lang.NoClassDefFoundError:
org/apache/xmlbeans/XmlException
at com.javalab.sample.ReadFromExcel3.main(ReadFromExcel3.java:22)
Caused by: java.lang.ClassNotFoundException: org.apache.xmlbeans.XmlException
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 1 more

1 个答案:

答案 0 :(得分:1)

您忘记在类路径中添加带有POI二进制分发版(在ooxml-lib下)的xmlbeans-xxx.jar。