分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > IT知识

杂项-Apache:POI

发布时间:2023-09-06 02:22责任编辑:林大明关键词:暂无标签
ylbtech-杂项-Apache:POI

Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能

1.返回顶部
1、

基本功能

结构:
HSSF - 提供读写Microsoft Excel格式档案的功能。
XSSF - 提供读写Microsoft Excel OOXML格式档案的功能。
HWPF - 提供读写Microsoft Word格式档案的功能。
HSLF - 提供读写Microsoft PowerPoint格式档案的功能。
HDGF - 提供读写Microsoft Visio格式档案的功能。
 

范文演示

创建Excel 文档
示例1将演示如何利用Jakarta POI API 创建Excel 文档。
示例1程序如下:
import org.apache.poi.hssf.usermodel.HSSFWorkbook;import org.apache.poi.hssf.usermodel.HSSFSheet;import org.apache.poi.hssf.usermodel.HSSFRow;import org.apache.poi.hssf.usermodel.HSSFCell;import java.io.FileOutputStream;public class CreateXL { ???/** Excel 文件要存放的位置,假定在D盘下*/ ???public static String outputFile = "D:\\test.xls"; ???public static void main(String argv[]) { ???????try { ???????????// 创建新的Excel 工作簿 ???????????HSSFWorkbook workbook = new HSSFWorkbook(); ???????????// 在Excel工作簿中建一工作表,其名为缺省值 ???????????// 如要新建一名为"效益指标"的工作表,其语句为: ???????????// HSSFSheet sheet = workbook.createSheet("效益指标"); ???????????HSSFSheet sheet = workbook.createSheet(); ???????????// 在索引0的位置创建行(最顶端的行) ???????????HSSFRow row = sheet.createRow((short)0); ???????????//在索引0的位置创建单元格(左上端) ???????????HSSFCell cell = row.createCell((short)0); ???????????// 定义单元格为字符串类型 ???????????cell.setCellType(HSSFCell.CELL_TYPE_STRING);//已过时 ???????????// 在单元格中输入一些内容 ???????????cell.setCellValue("增加值"); ???????????// 新建一输出文件流 ???????????FileOutputStream fOut = new FileOutputStream(outputFile); ???????????// 把相应的Excel 工作簿存盘 ???????????workbook.write(fOut); ???????????fOut.flush(); ???????????// 操作结束,关闭文件 ???????????fOut.close(); ???????????System.out.println("文件生成..."); ???????} catch (Exception e) { ???????????System.out.println("已运行 xlCreate() : " + e); ???????} ???}}
读取Excel文档中的数据
示例2将演示如何读取Excel文档中的数据。假定在D盘JTest目录下有一个文件名为test1.xls的Excel文件。
示例2程序如下:
import org.apache.poi.hssf.usermodel.HSSFWorkbook;import org.apache.poi.hssf.usermodel.HSSFSheet;import org.apache.poi.hssf.usermodel.HSSFRow;import org.apache.poi.hssf.usermodel.HSSFCell;import java.io.FileInputStream;public class ReadXL { ???/** Excel文件的存放位置。注意是反斜线*/ ???public static String fileToBeRead = "D:\\test1.xls"; ???public static void main(String argv[]) { ???????try { ???????????// 创建对Excel工作簿文件的引用 ???????????HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(fileToBeRead)); ???????????// 创建对工作表的引用。 ???????????// 本例是按名引用(让我们假定那张表有着缺省名"Sheet1") ???????????HSSFSheet sheet = workbook.getSheet("Sheet1"); ???????????// 也可用getSheetAt(int index)按索引引用, ???????????// 在Excel文档中,第一张工作表的缺省索引是0, ???????????// 其语句为:HSSFSheet sheet = workbook.getSheetAt(0); ???????????// 读取左上端单元 ???????????HSSFRow row = sheet.getRow(0); ???????????HSSFCell cell = row.getCell((short)0); ???????????// 输出单元内容,cell.getStringCellValue()就是取所在单元的值 ???????????System.out.println("左上端单元是: " + cell.getStringCellValue()); ???????} catch (Exception e) { ???????????System.out.println("已运行xlRead() : " + e); ???????} ???}}
 
设置单元格格式
在这里,我们将只介绍一些和格式设置有关的语句,我们假定workbook就是对一个工作簿的引用。在Java中,第一步要做的就是创建和设置字体和单元格的格式,然后再应用这些格式:
1、创建字体,设置其为红色、粗体:
HSSFFont font = workbook.createFont();font.setColor(HSSFFont.COLOR_RED);font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);

2、创建格式

HSSFCellStyle cellStyle= workbook.createCellStyle();cellStyle.setFont(font);
3、应用格式
HSSFCell cell = row.createCell((short) 0);cell.setCellStyle(cellStyle);cell.setCellType(HSSFCell.CELL_TYPE_STRING);cell.setCellValue("标题 ");

处理WORD文档

import java.io. * ;import org.apache.poi.hwpf.extractor.WordExtractor;import org.apache.poi.hssf.usermodel.HSSFWorkbook;import org.apache.poi.hssf.usermodel.HSSFSheet;import org.apache.poi.hssf.usermodel.HSSFRow;import org.apache.poi.hssf.usermodel.HSSFCell;public class TestPoi { ???public TestPoi() {} ???public static void main(String args[])throws Exception{ ???????FileInputStream in = new FileInputStream("D:\\a.doc"); ???????WordExtractor extractor = new WordExtractor(); ???????String str = extractor.extractText(in); ???????//System.out.println("the result length is"+str.length()); ???????System.out.println(str); ???}}
2、
2.返回顶部
 
3.返回顶部
 
4.返回顶部
 
5.返回顶部
0、
http://poi.apache.org/download.html
0.1、
 官方 Demo : http://poi.apache.org/spreadsheet/examples.html#hssf-only
1、
https://baike.baidu.com/item/POI/8886826
2、
https://www.cnblogs.com/java-class/p/5255024.html#_label1
3、
 
6.返回顶部
 
作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

杂项-Apache:POI

原文地址:https://www.cnblogs.com/storebook/p/9964208.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved