Jxl是一个开源的Java Excel API项目,通过Jxl,Java可以很方便的操作微软的Excel文档。除了Jxl之外,还有Apache的一个POI项目,也可以操作Excel,两者相比之下:Jxl使用方便,但功能相对POI比较弱。POI使用复杂,而Jxl较为简单,易于快速入门。
本文提供jxl.jar文件下载,版本为2_6_12。点此下载!http://download.csdn.net/detail/ma_hoking/8813453
【转载使用,请注明出处:http://blog.csdn.net/mahoking】
闲话少说,步入正题,案例演示:
1、创建接口ReadParser
public interface ReadParser { /** * 通用解析方法 * @param filePath */ public void generalReadMethod(String filePath); }2、创建继承类ReadExcelParser
import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import jxl.Cell; import jxl.Sheet; import jxl.Workbook; import jxl.read.biff.BiffException; public class ReadExcelParser implements ReadParser { //Workbook对象, 只读Workbook对象 private Workbook workbook; @Override public void generalReadMethod(String filePath) { try { //构建文件的输入流 InputStream inputStream = new FileInputStream(filePath); //创建Workbook workbook = Workbook.getWorkbook(inputStream); //获取Sheet表的个数 int sheetsNum = workbook.getNumberOfSheets(); //获取第一张sheet表,Sheet的下标从0开始 Sheet readSheet = workbook.getSheet(0); //获取Sheet表中所包含的总列数 int rsColumns = readSheet.getColumns(); //获取Sheet表中所包含的总行数 int rsRows = readSheet.getRows(); //获取指定单元格的对象引用 ,Sheet表示一个二维结构,本例使用两层FOR循环 for (int i = 0; i < rsRows; i++){ for (int j = 0; j < rsColumns; j++) { Cell cell = readSheet.getCell(j, i); System.out.print(cell.getContents() + "\t"); } System.out.println(); } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (BiffException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
4、测试
public class TestMain { public static void main(String[] args) { String filePath = "D:\\temp\\excel\\Students.xls"; ReadParser readParser = new ReadExcelParser(); readParser.generalReadMethod(filePath); } }
【转载使用,请注明出处:http://blog.csdn.net/mahoking】
原文地址:http://blog.csdn.net/mahoking/article/details/46524443