Java 导入导出Excel 最基本实现(Poi使用)

// 读取、存储、多行、行列合并
/**
 * 获得Excel对象
 */
public void getTemplateXls() {
    try {
        // 获取系统文档
        POIFSFileSystem fspoi = new POIFSFileSystem(new FileInputStream("/xxx/xxx.xls"));
        // 获取工作薄对象
        HSSFWorkbook workbook = new HSSFWorkbook(fspoi);
        // 获取工作表对象
        HSSFSheet sheet = workbook.getSheet("sheet1");
        // 获取Excel表格
        // 获取Excel工作表指定行的单元格
        HSSFRow row = sheet.getRow(1);
        // 获取Excel工作表指定列的单元格
        HSSFCell cell = row.getCell(1);
        System.out.println(cell);
    } catch (IOException e) {
        e.printStackTrace();
    }
}

/**
 * 创建Excel
 *
 * @throws IOException
 */
public void createTemplateXls() throws IOException {
    // 创建工作薄对象
    HSSFWorkbook workbook = new HSSFWorkbook();//这里也可以设置sheet的Name
    // 创建工作表对象
    HSSFSheet sheet = workbook.createSheet();

    // 创建工作表的行
    // 创建第一行,从零开始
    HSSFRow row = sheet.createRow(0);

    // 创建工作表的列
    // 第一行第一列为日期
    row.createCell(0).setCellValue(new Date());
    // 第一行第三列为testText
    row.createCell(2).setCellValue("testText");

    // 创建第二行
    // row = sheet.createRow(1);

    // 合并行/列方法说明
    // CellRangeAddress(firstRow, lastRow, firstCol, lastCol),参数的说明:
    //
    // firstRow 区域中第一个单元格的行号
    // lastRow 区域中最后一个单元格的行号
    // firstCol 区域中第一个单元格的列号
    // lastCol 区域中最后一个单元格的列号

    // row.createCell(0).setCellValue("testText1");
    // CellRangeAddress region=new CellRangeAddress(0, 0, 0, 5);// 合并第一行前六列
    // CellRangeAddress region=new CellRangeAddress(0, 5, 0, 0);// 合并第一列前六行

    // sheet.addMergedRegion(region);

    //设置sheet的Name
    workbook.setSheetName(0, "sheet的Name");

    //文档输出
    FileOutputStream out = new FileOutputStream("/xxx/" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()).toString() + ".xls");
    workbook.write(out);
    out.close();
}

更多Poi使用参考:https://blog.csdn.net/w893932747/article/details/89354979

发布了65 篇原创文章 · 获赞 8 · 访问量 16万+

猜你喜欢

转载自blog.csdn.net/u012382791/article/details/100505988
今日推荐