ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java使用Workbook实现excel文件的读取 兼容后缀名xls和xlsx

2020-12-23 18:30:43  阅读:287  来源: 互联网

标签:xlsx java 后缀名 num file getCell null row


		//获得输入流 (file:前端传到后台的文件 @RequestParam("file") MultipartFile file)
        InputStream inputStream = file.getInputStream();
        Workbook workbook  = null;
        //获得文件的后缀名
        String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
        //根据后缀名判断
        if(suffix.equals(".xlsx")){
             workbook = new XSSFWorkbook(inputStream);//Excel 2007
        }else if(suffix.equals(".xls")){
             workbook = new HSSFWorkbook(inputStream);//Excel 2003
        }
        Row row = null;
        rows = sheet.getPhysicalNumberOfRows();
        num = rows;
		//循环sesheet页中数据(我的第一行是标题所以num+1)从第二行开始,第一行是标题
        for (int i = 1; i < num + 1; i++) {
              row = sheet.getRow(i+1);
				//第一列
              if (row.getCell(0) != null) {
                  //这时候已经获取到了表格的某一个数据,根据自己实际情况存入数据库
                  //我获取的是带小数的数据所以用Double,根据实际需求修改
                  Double unit_num = row.getCell(0).getNumericCellValue();
               }
				//第二列 
               if (row.getCell(1) != null) {
                   //获取的是字符串类型的数据所以用String,不加.getString()会报错
                   String road_line = row.getCell(1).getRichStringCellValue().getString();
               }
               xtJzUnitService.insertXtJzUnit();//调用函数,存到数据库中
       }

标签:xlsx,java,后缀名,num,file,getCell,null,row
来源: https://blog.csdn.net/weixin_44893380/article/details/111595853

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有