浏览 2580 次
锁定老帖子 主题:jxl 工具包读取 excel文件
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-06-26
最后修改:2010-03-09
package *****; import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.List; import jxl.Cell; import jxl.Sheet; import jxl.Workbook; import jxl.read.biff.BiffException; /** * Title:读取EXCEL工具扩展类 * Description: * Copyright:Copyright (c) 2009 * Company:****** * @author **** * @version 1.0 */ public class ExcelUtil { /** * 传递excel文件对象读取文件方法 * @param file * excel文件对象 * @return * 返回List<String[][]> * @throws BiffException * @throws IOException */ public List<String[][]> read(File file) throws BiffException, IOException{ // 创建方法返回List集合对象 List<String[][]> contents = new ArrayList<String[][]>(); // 创建excel文件的工作簿对象book Workbook book = Workbook.getWorkbook(file); // 获取excel文件工作簿的工作表数量sheets Sheet[] sheets = book.getSheets(); // 声明每个工作表存储的二维数组对象 String[][] row_contents = null; // 逐个工作表开始读取 for(int sheet_index=0;sheet_index<sheets.length;sheet_index++) { // 测试语句 System.out.println("当前为"+sheet_index+"个工作簿!"); // 创建工作表对象sheet Sheet sheet = sheets[sheet_index]; // 获取excel当前工作表的总行数 int rows = sheet.getRows(); // 获取excel当前工作表的总列数 int columns = sheet.getColumns(); // 测试语句 System.out.println("当前工作簿一共有"+rows+"行、"+columns+"列"); // 创建当前工作表的存储二维数组 row_contents = new String[rows][columns]; // 循环将当前工作簿内容保存到对象中 // 循环行 for(int row_index=0;row_index<rows;row_index++) { // 循环列 String[] column_contents = new String[columns]; for(int column_index=0;column_index<columns;column_index++) { // 获取当前工作表.row_index,column_index单元格的cell对象 Cell cell = sheet.getCell(column_index,row_index); // 获取内容值 column_contents[column_index] = cell.getContents(); } // 当前sheet,当前row的所有column,存放到row_contents二维数组的row_index位置 row_contents[row_index] = column_contents; } /** * 读取测试输出代码片 */ //----------------------------------------------------------------------- for(int j=0;j<row_contents.length;j++) { for(int k=0;k<row_contents[j].length;k++){ System.out.print(row_contents[j][k]+"\t"); } System.out.println(); } System.out.println("---------------------"); //----------------------------------------------------------------------- // 集合收集数据 contents.add(row_contents); } // 返回 return contents; } } 呵呵.偷懒一下.. 附:jxl.jar 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |