MainActivity如下:
package cc.testexcel; import java.io.File; import jxl.Cell; import jxl.CellType; import jxl.DateCell; import jxl.NumberCell; import jxl.Sheet; import jxl.Workbook; import android.os.Bundle; import android.os.Environment; import android.app.Activity; /** * Demo描述: * 利用jxl.jar解析Excel文檔 * * 註意事項: * 1 在讀取每個單元格cell的時候,要留意其類型(CellType) * 這樣就可以對不同類型區別對待 * 2 測試用Excel文檔備份於assets文件夾下 * * 參考資料: * https://download.csdn.net/download/ljmin0204/4141034 * Thank you very much */ public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); parseExcel(); } private void parseExcel() { try { Workbook workbook = null; try { File file=new File(Environment.getExternalStorageDirectory()+File.separator+"test.xls"); workbook = Workbook.getWorkbook(file); } catch (Exception e) { throw new Exception("File not found"); } //得到第一張表 Sheet sheet = workbook.getSheet(0); //列數 int columnCount = sheet.getColumns(); //行數 int rowCount = sheet.getRows(); //單元格 Cell cell = null; for (int everyRow = 0; everyRow < rowCount; everyRow++) { for (int everyColumn = 0; everyColumn < columnCount; everyColumn++) { cell = sheet.getCell(everyColumn, everyRow); if (cell.getType() == CellType.NUMBER) { System.out.println("數字="+ ((NumberCell) cell).getValue()); } else if (cell.getType() == CellType.DATE) { System.out.println("時間="+ ((DateCell) cell).getDate()); } else { System.out.println("everyColumn="+everyColumn+",everyRow="+everyRow+ ",cell.getContents()="+ cell.getContents()); } } } //關閉workbook,防止內存泄露 workbook.close(); } catch (Exception e) { } } }
main.mxl如下: