• POI的简单使用


    一:简介

    利用POI工具可以导出word,excel,ppt等office文件

    二:程序代码示例

    package com.wang.test;
    
    import java.io.File;
    import java.io.FileOutputStream;
    import java.util.Calendar;
    import java.util.Date;
    
    import org.apache.poi.hssf.usermodel.HSSFCell;
    import org.apache.poi.hssf.usermodel.HSSFCellStyle;
    import org.apache.poi.hssf.usermodel.HSSFDataFormat;
    import org.apache.poi.hssf.usermodel.HSSFRow;
    import org.apache.poi.hssf.usermodel.HSSFSheet;
    import org.apache.poi.hssf.usermodel.HSSFWorkbook;
    
    public class Test {
    	public static void main(String[] args) throws Exception{
    		//创建工作簿
    		HSSFWorkbook wb=new HSSFWorkbook();
    		//创建工作表
    		HSSFSheet sheet1=wb.createSheet("first sheet");
    		HSSFSheet sheet2=wb.createSheet("second sheet");
    		//创建row
    		HSSFRow row=sheet1.createRow(0);
    		//创建单元格
    		HSSFCell cell=row.createCell(0);
    		cell.setCellValue(false);
    		row.createCell(1).setCellValue(Calendar.getInstance());
    		row.createCell(2).setCellValue(new Date());
    		row.createCell(3).setCellValue(123456.654321);
    		String str="abcdefghi";
    		
    		//创建数据格式对象
    		HSSFDataFormat format=wb.createDataFormat();
    		//创建单元格样式
    		HSSFCellStyle style=wb.createCellStyle();
    		
    		//对日期格式化
    		style.setDataFormat(format.getFormat("yyyy-MM-dd HH:mm:ss"));
    		//应用样式给单元格
    		row.getCell(1).setCellStyle(style);
    		row.getCell(2).setCellStyle(style);
    		
    		//对double值格式化
    		style=wb.createCellStyle();
    		style.setDataFormat(format.getFormat("#.00"));
    		row.getCell(3).setCellStyle(style);
    		
    		//设置列宽,注意:列宽相对于sheet的。
    		sheet1.setColumnWidth(1, 3000);
    		//也可以自动调节列宽
    		sheet1.autoSizeColumn(2);
    		sheet1.setColumnWidth(4, 7000);
    		//自动回绕文本,把太长的字符串换行显示
    		row=sheet1.createRow(1);
    		row.createCell(0).setCellValue("左上");
    		row.createCell(1).setCellValue("中间");
    		row.createCell(2).setCellValue("右下");
    		
    		//设置行高
    		row.setHeightInPoints(50);
    		sheet1.setColumnWidth(0, 5000);
    		sheet1.setColumnWidth(1, 5000);
    		sheet1.setColumnWidth(2, 5000);
    		
    		//设置对齐方式--左上
    		style=wb.createCellStyle();
    		style.setAlignment(HSSFCellStyle.ALIGN_LEFT);
    		style.setVerticalAlignment(HSSFCellStyle.VERTICAL_TOP);
    		row.getCell(0).setCellStyle(style);
    		
    		//设置对齐方式--中间
    		style=wb.createCellStyle();
    		style.setAlignment(HSSFCellStyle.ALIGN_CENTER);
    		style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);
    		row.getCell(1).setCellStyle(style);
    		
    		//设置对齐方式--右下
    		style=wb.createCellStyle();
    		style.setAlignment(HSSFCellStyle.ALIGN_RIGHT);
    		style.setVerticalAlignment(HSSFCellStyle.VERTICAL_BOTTOM);
    		row.getCell(2).setCellStyle(style);
    		
    		//重点:计算列
    		row=sheet1.createRow(3);
    		row.createCell(0).setCellValue(13);
    		row.createCell(1).setCellValue(45);
    		row.createCell(2).setCellValue(25);
    		row.createCell(3).setCellFormula("sum(A4:C4)");
    		//导出到磁盘
    		wb.write(new FileOutputStream(new File("f:/poi.xls")));
    	}
    }
    效果:

    1

  • 相关阅读:
    js中split字符串分割
    获取日期,实时显示当前时间,时间相减
    5.5.4 函数内部属性
    单选按钮radio和下拉选择select,ajax返回数据回显对应值
    如何在HTML不同的页面中,共用头部与尾部?
    android-Activity(四大组件之一)
    android-ImageView及其子类
    android-ActionBar
    android- 菜单
    android-Fragment
  • 原文地址:https://www.cnblogs.com/liuruowang/p/4525975.html
Copyright © 2020-2023  润新知