Apache POI(Poor Obfuscation Implementation)简洁版的模糊实现,是专门针对Microsoft Office格式档案读和写。是Apache通过Java编写的免费开源的跨平台的Java API。
其中
HSSF--针对Microsoft Excel档案
HWPF--针对Microsoft Word档案
HSLF--针对Microsoft PowerPoint档案
HDGF--针对Microsoft Visio档案
jar包下载

点POI

文本采用的版本是5.0 点dowloads


这两个路径,点击其中一个下载
1 写excel文件
package com.wanmait.excelTest;
import java.io.File;
import java.io.IOException;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFFont;
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.BorderStyle;
import org.apache.poi.ss.usermodel.IndexedColors;
import org.apache.poi.ss.util.CellRangeAddress;
public class WriteExcel {
public void writeData()
{
HSSFWorkbook workbook = new HSSFWorkbook();
//创建工作簿
HSSFSheet sheet = workbook.createSheet("wanma1");
//创建工作表
HSSFRow row = sheet.createRow(4);
//创建行
HSSFCell cell = row.createCell(1);
//创建列
HSSFFont font = workbook.createFont();
//创建字体
font.setBold(true);
//设置加粗
font.setFontHeightInPoints((short)24);
//设置字体大小
HSSFCellStyle cellStyle = workbook.createCellStyle();
//创建Cell样式
cellStyle.setFont(font);
//设置样式字体
cellStyle.setBorderLeft(BorderStyle.THIN);
//设置左边框样式
cellStyle.setLeftBorderColor(IndexedColors.BLACK.getIndex());
//设置左边框颜色
cell.setCellStyle(cellStyle);
//设置Cell样式
cell.setCellValue("张三");
//设置该列的数据
CellRangeAddress cellRange = new CellRangeAddress(4, 6, 1, 3);
//创建合并单元格 (firstRow,lastRow,firstCell,lastCell)
sheet.addMergedRegion(cellRange);
//添加合并单元格
//合并单元格中间写数据 只能是row4 col1
File file = new File("d:/wanmait.xlsx");
try {
workbook.write(file);//数据写往文件
workbook.close();//关闭工作簿
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}workbook.write()方法被重载,其中的参数也可以是OutputStream。
2 读Excel文件
package com.wanmait.excelTest;
import java.io.File;
import java.io.IOException;
import org.apache.poi.hssf.usermodel.HSSFCell;
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.poifs.filesystem.POIFSFileSystem;
public class ReadExcel {
public void readData()
{
try {
File file = new File("d:/wanmait.xlsx");
POIFSFileSystem poifile = new POIFSFileSystem(file);
//获取文件
HSSFWorkbook workbook = new HSSFWorkbook(poifile);
//打开文件 加载文件 创建工作簿
HSSFSheet sheet = workbook.getSheetAt(0);
//获得表 0下标
HSSFRow row = sheet.getRow(4);
//获得行
HSSFCell cell = row.getCell(1);
//获得单元格
String value = cell.getStringCellValue();
//获得单元格值
System.out.println(value);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

0条评论
点击登录参与评论