zoukankan      html  css  js  c++  java
  • Android解析Excel文档完整示例

    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文件夹下
     * 
     * 参考资料:
     * http://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如下:

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
         >
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="测试Excel的解析"
            android:layout_centerInParent="true" />
    
    </RelativeLayout>


     

  • 相关阅读:
    青浦图书志
    师徒俩就这样比划着 讲着该怎么去使用Reactor Programming
    Stephane Maldini and Violeta Georgieva at SpringOne Platform 2019
    reactor 大会
    这样使用Mono.zip就可以合并多个值进行下一步运算
    You are totally right 和 You are absolutely right 区别
    reacctor 1
    developer.ibm.com
    zip~~~~~~~~~~~
    044 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 06 使用do-while循环实现猜字游戏
  • 原文地址:https://www.cnblogs.com/riskyer/p/3320323.html
Copyright © 2011-2022 走看看