java实现excel导入导出

Jakarta POI

文章来源: https://blog.csdn.net/qq_45150222/article/details/105012569
pom

<dependency>
	<groupId>org.apache.poi</groupId>
	<artifactId>poi-ooxml</artifactId>
	<version>3.9</version>
</dependency>
<dependency>
	<groupId>commons-io</groupId>
	<artifactId>commons-io</artifactId>
	<version>2.2</version>
</dependency>

导出到excel

		// 创建第一行列名 ,自定义个数
        String[] title = {"name1","name2","name3"};
        //创建Excel
        HSSFWorkbook workbook = new HSSFWorkbook();
        //创建一个工作表
        HSSFSheet sheet = workbook.createSheet();
        //创建第一行
        HSSFRow row = sheet.createRow(0);
        HSSFCell cell = null;
        // 插入第一行
        for (int i = 0; i < title.length; i++) {
            cell = row.createCell(i);
            cell.setCellValue(title[i]);
        }
        // 追加数据
        for (int i = 1; i < 10; i++) {// 这里的int 起始是1 也就是第二行开始 记得和头对齐
            HSSFRow nexTrow = sheet.createRow(i);
            HSSFCell cell2 = nexTrow.createCell(0);
            cell2.setCellValue("name1");
            cell2 = nexTrow.createCell(1);
            cell2.setCellValue("name2");
            cell2 = nexTrow.createCell(2);
            cell2.setCellValue("name3");
        }
        // 创建一个文件
        File file = new File("d:/test.xls");
        try {
            file.createNewFile();
            // 存放在文件中
            FileOutputStream stream = FileUtils.openOutputStream(file);
            workbook.write(stream);

            stream.close();
        } catch (Exception e) {
            e.printStackTrace();
        }

导入到java

		// 导入文件地址
        File file = new File("d:/test.xls");
        try {
            // 创建Excel 读取文件内容
            HSSFWorkbook workbook = new HSSFWorkbook(FileUtils.openInputStream(file));
            /**
             * 第一种方式读取Sheet页
             */
//            HSSFSheet sheet = workbook.getSheet("Sheet0");
            /**
             * 第二种方式读取Sheet页
             */
            HSSFSheet sheet = workbook.getSheetAt(0);
            int firstRowNum = 0;// 起始行第0行
            int lasrRowNum = sheet.getLastRowNum();// 一直读到最后一行
            for (int i = 0; i < lasrRowNum; i++) {
                HSSFRow row = sheet.getRow(i);
                // 获取当前最后单元格列号
                int lastCellNum = row.getLastCellNum();
                for (int j = 0; j < lastCellNum; j++) {
                    HSSFCell cell = row.getCell(j);
                    String value = cell.getStringCellValue();// 注意! 如果Excel 里面的值是String 那么getStringCellValue 如果是其他类型 则需要修改
                    System.out.print(value + "  ");
                }
                System.out.println();
            }

        } catch (Exception e) {
            e.printStackTrace();
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值