java实现excel导入、导出及浏览器下载

 导入并输出到控制台

1.引入相应依赖

        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>4.1.2</version>
        </dependency>

 2.编写代码

//导入数据到控制台
    @GetMapping("/ImportExcel")
    public String getExcel() throws IOException {
        //指定要读取的excel文件路径
        String path="D://应用软件/JAVA项目/SpringBoot/单项功能案例/Spring-excel导出/excelFile/testExcel.xlsx";
        //获取一个输入流
        FileInputStream in = new FileInputStream(path);
        //获取一个excel流,并指定文件输入流
        XSSFWorkbook excel = new XSSFWorkbook(in);
        //获取第一页(sheet页码从0开始)
        XSSFSheet sheet = excel.getSheetAt(0);
        //循环获取行和列(getLastRowNum方法获取最后一行索引,getLastCellNum方法获取最后一列索引)
        for (int i = 0; i <= sheet.getLastRowNum(); i++) {
            //获取行对象
            XSSFRow row = sheet.getRow(i);
            for (int j = 0; j < row.getLastCellNum(); j++) {
                System.out.print(row.getCell(j) + " ");
            }
            System.out.println();
        }
        return "控制台输出成功";
    }

3.测试结果如图

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java导出包含多个sheet的Excel文件并实现浏览器下载的过程如下: 1. 首先,我们需要使用第三方库如Apache POI来操作Excel文件。 2. 创建一个Workbook对象,该对象可以表示整个Excel文件。 3. 使用Workbook对象创建多个Sheet对象,分别表示不同的工作表。 4. 在每个Sheet对象中,使用Row和Cell对象来创建数据行和单元格。 5. 将需要导出的数据填充到每个Sheet的相应单元格中。 6. 完成数据填充后,使用HttpServletResponse对象设置响应头,指定文件类型为Excel文件(application/vnd.ms-excel)。 7. 使用OutputStream对象将Workbook对象写入到输出流中,实现导出。 8. 关闭输出流和Workbook对象。 示例代码如下: ```java // 导出包含多个sheet的Excel文件 public void exportExcel(HttpServletResponse response) { try { // 创建Workbook对象,表示整个Excel文件 Workbook workbook = new HSSFWorkbook(); // 创建第一个Sheet对象 Sheet sheet1 = workbook.createSheet("Sheet1"); // 在第一个Sheet中创建数据行和单元格 Row row1 = sheet1.createRow(0); Cell cell1 = row1.createCell(0); cell1.setCellValue("数据1"); // 创建第二个Sheet对象 Sheet sheet2 = workbook.createSheet("Sheet2"); // 在第二个Sheet中创建数据行和单元格 Row row2 = sheet2.createRow(0); Cell cell2 = row2.createCell(0); cell2.setCellValue("数据2"); // 设置浏览器下载的响应头 response.setContentType("application/vnd.ms-excel"); response.setHeader("Content-Disposition", "attachment; filename=exported_excel.xls"); // 获取输出流 OutputStream outputStream = response.getOutputStream(); // 写入到输出流中 workbook.write(outputStream); // 关闭输出流和Workbook对象 outputStream.close(); workbook.close(); } catch (Exception e) { e.printStackTrace(); } } ``` 以上代码可以实现导出包含两个sheet的Excel文件,并且通过浏览器下载。其中,我们通过设置响应头使浏览器将输出结果作为Excel文件下载,文件名为exported_excel.xls。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值