zoukankan      html  css  js  c++  java
  • 读取excel文件后,将一行数据封装成一个对象,多行返回一个map对象即可

    读取excel文件后,将一行数据封装成一个对象,多行返回一个map对象即可

    /**
    * 读取excel文件后,将一行数据封装成一个对象,多行返回一个map对象即可
    * @param path 输出的文件路径
    * @return
    */
    public static Map<Integer,List<String>> readUrl(String path){
    //想要读取的url地址
    URL url=null;
    XSSFWorkbook xssfWorkbook = null;
    Map<Integer,List<String>> map=new HashMap <Integer, List <String>>();
    InputStream inputStream = null;
    Workbook workbook = null;
    try {
    url=new URL(path);
    URLConnection conn = url.openConnection();
    inputStream = conn.getInputStream();
    workbook = WorkbookFactory.create(inputStream);
    inputStream.close();
    //工作表对象
    Sheet sheet = workbook.getSheetAt(0);
    //获取最后一行是第几行
    int lastRowNum = sheet.getLastRowNum()+1;
    //由于第一行是字段名称,不做读取,后面建表的时候生成字段,因此这里从第二行开始读取,注意第二行的下标是1
    for (int i = 0; i < lastRowNum; i++) {
    //获取行
    Row row = sheet.getRow(i);
    //进行行的非空判断后,在遍历,避免空指针
    if(row != null){
    //实例化一个List集合,用于存放一行读取出来的所有单元数据
    List<String> list = new ArrayList<>();
    //遍历行
    for (Cell cell : row) {
    String value="";
    //获得单元格,对单元格进行非空判断
    if(cell != null){
    //设置单元格数据的类型为字符串,这样即使表中数据有其他类型,也不用考虑类型转换,考虑不周有可能发生的类型转换异常
    cell.setCellType(1);
    //获取单元格的数据
    value = cell.getStringCellValue();
    }
    //将每个单元格数据加入List集合中
    //System.out.print(value+ ' ');
    list.add(value);
    }
    //每打印一行就换一行
    //System.out.println();
    //将读取出的每个行的数据封装成一个对象
    map.put(i,list);


    }
    }
    } catch (MalformedURLException e) {
    e.printStackTrace();
    } catch (IOException e) {
    e.printStackTrace();
    } catch (InvalidFormatException e) {
    e.printStackTrace();
    }


    return map;
    }
  • 相关阅读:
    Linux命令: ls -l显示文件和目录的详细资料
    Linux命令: ls -F
    Linux命令: pwd显示工作路径
    Linux命令: cd /home 进入'/home'目录
    Linux命令: cd ../.. 返回上两级目录
    Linux命令: cd
    boost::mpl::eval_if的使用方法
    【block第四篇】实现
    Android中pendingIntent的深入理解
    hdu 1565 方格取数(1)(状态压缩dp)
  • 原文地址:https://www.cnblogs.com/gnpugongying/p/15127844.html
Copyright © 2011-2022 走看看