这篇文章主要介绍JavaExcelApi如何用于在Excel格式的文件中读写数据。 1:Reading Spreadsheets (读电子表格) JavaExcelApi能从当前的文件系统中或者从一个输入流中读取电子表格;当我们读取数据时。 这第一步要做的是创造一个Workbook(工作薄)向这样: import java.io.File; import java.util.Date; import jxl.*;
...
Workbook workbook = Workbook.getWorkbook(new File("myfile.xls")); 2。当你访问这个workbook时,你就可以访问各个sheets(工作表)象这样: Sheet sheet = workbook.getSheet(0); 记住第一个表的下标是0,依次第二个是1,第三个是2;当然你可以用表的名称来访问表; 3。有了上面的两步,你就可以访问cell(单元格)了;利用一个方便的函数:getContents() 象这样: Cell a1 = sheet.getCell(0,0); //访问A1 Cell b2 = sheet.getCell(1,1); //访问b2 Cell c2 = sheet.getCell(2,1); //访问c2
String stringa1 = a1.getContents(); //取得A1 String stringb2 = b2.getContents(); String stringc2 = c2.getContents();
// Do stuff with the strings etc ... 然而,上面的做法是不管cell中的数据类型的,返回的都是Srting; 但我们知道excel中有许多的其他类型;假如我们要按照类型存取cell中的内容时: 比如作为一数据类型存入;上面的方法就行不通的:而下面的代码在你确定你的电子表格有单元格在相应的位置; String stringa1 = null; double numberb2 = 0; Date datec2 = null;
Cell a1 = sheet.getCell(0,0); Cell b2 = sheet.getCell(1,1); Cell c2 = sheet.getCell(2,1);
if (a1.getType() == CellType.LABEL) { LabelCell lc = (LabelCell) a1; stringa1 = lc.getString(); }
if (b2.getType() == CellType.NUMBER) { NumberCell nc = (NumberCell) b2; numberb2 = b2.getValue(); }
if (c2.getType() == CellType.DATE) { DateCell dc = (DateCell) c2; datec2 = c2.getDate(); }
// Do stuff with dates and doubles ... 最后:别望了关闭工作薄;
workbook.close();

|