连接到Excel时“无法识别OLE流”异常

时间:2011-03-31 09:23:56

标签: java excel ole

我试图将我的Java程序与Excel文件连接起来。我做到了这一点。但它抛出了这个例外

  

无法识别OLE流

请帮我完成这个。

import jxl.*;
import java.io.*;

public class excel
{
      public static void main(String[] args)throws Exception
      {

       File ex=new File("D:/worksps/test.xlsx");
       Workbook w= Workbook.getWorkbook(ex);
       Sheet s= w.getSheet(0);
       for(int i=0;i<s.getColumns();i++)
       {
         for(int j=0;j<s.getRows();j++)
         {
               Cell cell=s.getCell(i, j);
               System.out.println("     "+cell.getContents());
         }
         System.out.println("\n");
       }
      }
}

1 个答案:

答案 0 :(得分:16)

JXL支持在Excecl 95/97和2000中创建的Excel工作表 -

请阅读官方JXL网站中的以下内容 - http://www.andykhan.com/jexcelapi/

  

功能

     

从Excel 95,97,2000中读取数据   工作簿读写公式   (仅限Excel 97及更高版本)生成   Excel 2000格式的电子表格

您的Excel工作表似乎是在Excel 2000之后创建的。这似乎是问题所在。

如果要阅读在Excel 2000之后创建的Excel文件,则应使用Apache POI。它也是一个易于使用的API,支持MS Excel 97到MS Excel 2008。