1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > POI(java 操作excel word等)编程

POI(java 操作excel word等)编程

时间:2022-06-13 10:17:06

相关推荐

POI(java 操作excel word等)编程

一、下载所需jar包

下载地址:/download.html

/detail/likai22/534250

二、上代码

package com.sxdx.excelpoi.action;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import jxl.Cell;import jxl.CellType;import jxl.NumberCell;import jxl.Sheet;import jxl.Workbook;import jxl.read.biff.BiffException;import org.apache.poi.hssf.usermodel.HSSFCell;import org.apache.poi.hssf.usermodel.HSSFCellStyle;import org.apache.poi.hssf.usermodel.HSSFRow;import org.apache.poi.hssf.usermodel.HSSFSheet;import org.apache.poi.hssf.usermodel.HSSFWorkbook;import org.apache.poi.ss.usermodel.HorizontalAlignment;import org.apache.poi.ss.usermodel.VerticalAlignment;import org.apache.poi.ss.util.CellRangeAddress;/*** HSSF - 提供读写Microsoft Excel XLS格式档案的功能。XSSF - 提供读写Microsoft Excel OOXML XLSX格式档案的功能。HWPF - 提供读写Microsoft Word DOC97格式档案的功能。XWPF - 提供读写Microsoft Word DOC格式档案的功能。HSLF - 提供读写Microsoft PowerPoint格式档案的功能。HDGF - 提供读Microsoft Visio格式档案的功能。HPBF - 提供读Microsoft Publisher格式档案的功能。HSMF - 提供读Microsoft Outlook格式档案的功能。**/public class PoiAction {/*** 生成excel* @param args*/public static void main(String[] args) {HSSFWorkbook wb = new HSSFWorkbook();// 创建HSSFWorkbook对象HSSFSheet sheet = wb.createSheet("sheet0");// 创建HSSFSheet对象//合并单元格CellRangeAddress构造参数依次表示起始行,截至行,起始列, 截至列 sheet.addMergedRegion(new CellRangeAddress(0,0,0,10)); sheet.setDefaultRowHeightInPoints(20);//设置缺省列高sheet.setDefaultColumnWidth(8);//设置缺省列宽 //设置指定列的列宽,256 * 50这种写法是因为width参数单位是单个字符的256分之一 sheet.setColumnWidth(0, 256 * 30); // 设置单元格的横向和纵向对齐方式HSSFCellStyle cellStyle = wb.createCellStyle(); cellStyle.setAlignment(HorizontalAlignment.CENTER);cellStyle.setVerticalAlignment(VerticalAlignment.CENTER);//-----------------------------------------------------------------------HSSFRow row0 = sheet.createRow(0);// 创建HSSFRow对象row0.setHeight((short) 600);//设置行高HSSFCell cell0 = row0.createCell(0);cell0.setCellValue("考勤结果表");cell0.setCellStyle(cellStyle);HSSFRow row1 = sheet.createRow(1);// 创建HSSFRow对象// 创建HSSFCell对象 HSSFCell cell = row.createCell(0)// 设置单元格的值for(int i=0;i<31;i++){HSSFCell cell1 = row1.createCell(i);cell1.setCellValue(i+1);cell1.setCellStyle(cellStyle);}HSSFRow row2 = sheet.createRow(2);for(int i=0;i<31;i++){HSSFCell cell2 = row2.createCell(i);cell2.setCellValue("正常");cell2.setCellStyle(cellStyle);}HSSFRow row3 = sheet.createRow(3);for(int i=0;i<31;i++){HSSFCell cell3 = row3.createCell(i);cell3.setCellValue("迟到");cell3.setCellStyle(cellStyle);}HSSFRow row4 = sheet.createRow(4);for(int i=0;i<31;i++){HSSFCell cell4 = row4.createCell(i);cell4.setCellValue("请假");cell4.setCellStyle(cellStyle);}try {// 输出Excel文件FileOutputStream output = new FileOutputStream("d:\\workbook.xls");wb.write(output);output.flush();} catch (IOException e) {// TODO Auto-generated catch block e.printStackTrace();}}/*** 读取excel*/public static void readExcel(){//导入已存在的Excel文件,获得只读的工作薄对象 FileInputStream fis = null;try {fis = new FileInputStream("d:\\workbook.xls");} catch (FileNotFoundException e) {// TODO Auto-generated catch block e.printStackTrace();} Workbook wk = null;try {wk = Workbook.getWorkbook(fis);} catch (BiffException e) {// TODO Auto-generated catch block e.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch block e.printStackTrace();} //获取第一张Sheet表 Sheet sheet = (Sheet) wk.getSheet(0); //获取总行数 int rowNum = sheet.getRows();//从数据行开始迭代每一行 for(int i=0;i<rowNum;i++){System.out.println(sheet.getCell(0, i).getContents());}try {fis.close();} catch (IOException e) {// TODO Auto-generated catch block e.printStackTrace();} wk.close(); }}

三、main()方法为生成excel,readExcel()为读取excel。效果图如下

1、生成文件

2、excel内容

3、读取excel

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。