java采用jxl.jar读取Excel,算法比较简单。
不过经过测试,采用这个办法读取xlsx文件会发生异常
jxl简述
通过java操作excel表格的工具类库
支持Excel 95-2000的所有版本
生成Excel 2000标准格式
支持字体、数字、日期操作
能够修饰单元格属性
支持图像和图表
应该说以上功能已经能够大致满足我们的需要。最关键的是这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。另外需要说明的是,这套API对图形和图表的支持很有限,而且仅仅识别PNG格式。
Exception in thread "main" jxl.read.biff.BiffException: Unable to recognize OLE stream
at jxl.read.biff.CompoundFile.(CompoundFile.java:116)
at jxl.read.biff.File.(File.java:127)
at jxl.Workbook.getWorkbook(Workbook.java:221)
at jxl.Workbook.getWorkbook(Workbook.java:198)
at com.javaer.file.ExcelRead.read(ExcelRead.java:17)
at com.javaer.file.ExcelRead.main(ExcelRead.java:44)
所以暂时认为jxl读取高版本excel可能存在问题。
package com.javaer.file;
import java.io.File;
import java.io.IOException;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
public class ExcelRead {
public void read(String fname) throws BiffException, IOException{
File f = new File(fname);
Workbook workbook = Workbook.getWorkbook(f);
Sheet sheet = workbook.getSheet(0);//读取第一个Sheet.
int rows = 1;
System.out.println(sheet.getRows());//读取行数
System.out.println(sheet.getColumns());//读取列数
System.out.println("---------------------");
for(rows=0;rows
读取的结果如下
3
4
---------------------
第1行:
姓名 成绩 性别 班级
第2行:
张无忌 98 男 太极班
第3行:
白眉鹰王 99 男 幼儿园大班
jxl.jar包下载地址 http://dl.vmall.com/c0tbawmweg
月小升QQ 2651044202, 技术交流QQ群 178491360
首发地址:月小升博客 – https://java-er.com/blog/java-jxl-excel-read/
无特殊说明,文章均为月小升原创,欢迎转载,转载请注明本文地址,谢谢