java读取表格数据,现成方法调用

 java读取表格数据,方法已封装好,多数情况下能够直接调用,再对返回的值进行操作。需要进行改动的根据情况进行改动。

1.导入包

需要导入下面三个包


    org.apache.poi
    poi
    3.17-beta1



    org.apache.poi
    poi-ooxml
    3.17-beta1



    org.apache.poi
    poi-ooxml-schemas
    3.17-beta1

2.代码

public class Excel(){

public List>  read(String filePath,String columns[]) {
        Workbook wb =null;
        Sheet sheet = null;
        Row row = null;
        List> list = null;
        String cellData = null;

        wb = readExcel(filePath);
        if(wb != null){
            //用来存放表中数据
            list = new ArrayList>();
            //获取第一个sheet
            sheet = wb.getSheetAt(0);
            //获取最大行数 
            int rownum = sheet.getPhysicalNumberOfRows();
            //获取第一行
            row = sheet.getRow(0);
            //获取最大列数
            int colnum = row.getPhysicalNumberOfCells();
            for (int i = 1; i map = new LinkedHashMap();
                row = sheet.getRow(i);
                if(row !=null){
                    for (int j=0;j

方法说明:读者只需调用 read() 方法,该方法读表时已设置为忽略第一行表头,传入参数filePath:表格的文件地址,

String columns[] 表格中每个字段对应的名字,读者可自行取值,顺序相同即可。返回值为以 字段名为键值,字段值 为值的,map型链表。键值为column[]中的字符值。将所有的类型都转化为了String,读者在取值是可根据类型转换回来。

下面是一个调用和对返回的值处理 示例:

 String c[]= {"stuId","stuName","orgName","orgClass"};
    	 List> list=read(filePath,c);
    	 DateFormat df= new SimpleDateFormat("yyyy-MM-dd");
         for (Map map : list) {
           String stuId=map.get("stuId");
           String stuName=map.get("stuName");
           String orgName=map.get("orgName");
           String orgClass=map.get("orgClass"); 
        
         }

谢谢阅读 

你可能感兴趣的:(java基础知识)