1.先定义一个结构,用来存放单元格的属性。

private class CurCell{int row;int col;String content;}

2.定义一个ArrayList用来存放excel中的内容.

private ArrayList<CurCell> mArrayList = new ArrayList<MainActivity.CurCell>();

3.读取excel中的内容(excel的Assets中)。

private void ReadExcel(String fileName){try {InputStream mInputStream = getResources().getAssets().open(fileName);Workbook wb = Workbook.getWorkbook(mInputStream); Sheet mSheet = wb.getSheet(0);int row = mSheet.getRows();int columns = mSheet.getColumns();Log.i("W","Total Row: " + row + ", Total Columns: " + columns);for(int i= 0 ; i < row ; i ++){int cols = mSheet.getRow(i).length;for(int j = 0 ; j < cols ; j ++){Cell temp = mSheet.getCell(j, i);String content = temp.getContents();Log.i("W",j + " ," + i + " ," + content);CurCell mCell = new CurCell();mCell.row = i;mCell.col = j;mCell.content = content;mArrayList.add(mCell);}}wb.close();mInputStream.close();} catch (BiffException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IndexOutOfBoundsException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}

4.写excel文件。

private void WriteExcel(){try {WritableWorkbook mWorkbook = Workbook.createWorkbook(new File("/mnt/sdcard/test.xls"));WritableSheet mSheet = mWorkbook.createSheet("hello", 0);WritableSheet mSheet2 = mWorkbook.createSheet("test", 2);for(CurCell mCurCell : mArrayList){Label mLabel = new Label(mCurCell.col, mCurCell.row, mCurCell.content);mSheet.addCell(mLabel);}int row = mArrayList.get(mArrayList.size() - 1).row;int col = mArrayList.get(mArrayList.size() - 1).col;jxl.write.Number number = new jxl.write.Number(col,row,55.123);mSheet2.addCell(number);mWorkbook.write();mWorkbook.close();} catch (RowsExceededException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (WriteException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}

5.更新单元格的内容。

private void UpdateExcel(){try {Workbook mWorkbook = Workbook.getWorkbook(new File("/mnt/sdcard/test.xls"));WritableWorkbook mWritableWorkbook = Workbook.createWorkbook(new File("/mnt/sdcard/test.xls"), mWorkbook);WritableSheet mWritableSheet = mWritableWorkbook.getSheet(0);WritableCell mWritableCell = mWritableSheet.getWritableCell(1, 0);Label mLabel = (Label)mWritableCell;mLabel.setString("modify");mWritableWorkbook.write();mWritableWorkbook.close();mWorkbook.close();} catch (BiffException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (WriteException e) {// TODO Auto-generated catch blocke.printStackTrace();}}

更多相关文章

  1. android中插入一条SMS短信内容(可用于恢复SMS短信操作)
  2. Android常用修改
  3. Android自定义进度条-带文本(文字进度)的水平进度条(ProgressBar
  4. Android(安卓)Span应用
  5. [Android][FWK]支持转屏属性设置
  6. 自定义圆形的ProgressBar
  7. Android弹出菜单的灵活运用(自定义AlertDialog)
  8. Android(安卓)TableLayout
  9. android 各种xml资源的引用方式

随机推荐

  1. Android(安卓)Monkey源码解析
  2. Binary XML file line 2: Error inflatin
  3. Android高效加载大图,防止OOM,以及多图解
  4. Android(安卓)Handler, Looper浅析
  5. 我的Android进阶之旅------>Android(安卓
  6. Appium+Python实现iOS自动化测试~环境搭
  7. Android程序如何安装到内存或卡中
  8. Android(安卓)计算执行时间间隔请使用Sys
  9. Activity的创建
  10. Android中RadioGroup的初始化和简单的使