jxl是一个韩国人写的java操作excel的工具, 在开源世界中,有两套比较有影响的API可 供使用,一个是POI,一个是jExcelAPI。其中功能相对POI比较弱一点。但jExcelAPI对中文支持非常好,API是纯Java的, 并不 依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。 另外需要说明的是,这套API对图形和图表的支持很有限,而且 仅仅识别PNG格式。读取数据如下:
import java.io.File; import java.util.ArrayList; import java.util.List; import jxl.Cell; import jxl.Sheet; import jxl.Workbook; public class ExcelUtils { public static String readExcelXY(Workbook book, int x, int y) { // 获得第一个工作表对象 Sheet sheet = book.getSheet(0); // 得到第一列第一行的单元格 Cell cell1 = sheet.getCell(x, y); return cell1.getContents(); } public static List<String[]> readExcelAll(Workbook book, int maxX, int maxY) { List<String[]> list = new ArrayList<String[]>(); for (int y = 0; y < maxY; y++) { String[] arr = new String[maxX]; for (int x = 0; x < maxX; x++) { arr[x] = readExcelXY(book, x, y); } list.add(arr); } return list; } public static Workbook createWorkbook(String file){ Workbook book = null; try { book = Workbook.getWorkbook(new File(file)); } catch(Exception e) { e.printStackTrace(); } return book; } public static void main(String[] args) { Workbook book = createWorkbook("c:\\Book1.xls"); int maxY = 864; int maxX = 4; List<String[]> list = readExcelAll(book, maxX, maxY); for (String[] str : list) { for (String s : str) { System.out.print(s+"-"); } System.out.println(); } book.close(); } }
待续。。。。。。。