java用ole打开文本文件_Java程序对Office文档的处理

本文介绍了如何在Java中利用Apache POI库来读取和处理Office文档,特别是Excel文件。Apache POI提供了对Excel(HSSF/XSSF)、Word(HWPF/XWPF)等格式的支持。示例代码展示了如何读取Excel文件中的数据并将其打印出来。
摘要由CSDN通过智能技术生成

B/S模式已成为应用开发的主流,而在企业应用系统中,经常有客户这样子要求:我要把我的报表数据导入到系统里面,不想在浏览器里面输入。或者是:我们已经习惯用Excel打印。这样在我们实际的开发中,很多时候需要对Office文档进行操作(如读取Excel文档数据导入数据库、数据库数据导出Excel文件、读取Word文档转换Html、读取Excel文档转换Html【类似QQ邮箱附件的预览功能】等)

什么是Apache POI

Apache POI项目是创造和保持java API操纵各种文件格式,基于Office Open XML标准(OOXML)和微软的OLE复合文档格式(OLE2)。总之,Apache POI可以使用java读写Excel文件。此外,您可以读取和写入MS Word和PowerPoint文件。

POI API结构说明

包名称说明

HSSF提供读写Microsoft Excel XLS格式档案的功能。

XSSF提供读写Microsoft Excel OOXML XLSX格式档案的功能。

HWPF提供读写Microsoft Word DOC格式档案的功能。

HSLF提供读写Microsoft PowerPoint格式档案的功能。

HDGF提供读Microsoft Visio格式档案的功能。

HPBF提供读Microsoft Publisher格式档案的功能。

HSMF提供读Microsoft Outlook格式档案的功能。

下面我们使用POI实现对excel文件的读取

80860859_1

80860859_2

public static void main(String[] args) throws Exception {

List'C:/Users/Administrator/Desktop/新建文件夹/a.xls');

for (Map

Set

for (Entry

System.out.print(entry.getValue() + '\t');

}

System.out.println();

}

}

/**

* 根据excel文件路径返回list list对应一张表的数据,list里面是多个map集合,一个map对应一行数据

*

* @param fileName

* @return

* @throws Exception

*/

public static List

throws Exception {

Listnew ArrayList();

FileInputStream fis = newFileInputStream(fileName);

Workbook workbook = null;

if (fileName.toLowerCase().endsWith('xlsx')) {

workbook = new XSSFWorkbook(fis);

} else if (fileName.toLowerCase().endsWith('xls')) {

workbook = new HSSFWorkbook(fis);

}

Sheet sheet = workbook.getSheetAt(0);

Iterator rowIterator = sheet.iterator();

while (rowIterator.hasNext()) {

Row row = rowIterator.next();

Iterator cellIterator = row.cellIterator();

Mapnew HashMap

while (cellIterator.hasNext()) {

Cell cell = cellIterator.next();

String v = cell.getStringCellValue();

maprow.put(cell.getColumnIndex() + '', v);

}

sheetList.add(maprow);

}

return sheetList;

}

80860859_3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值