`
tangwenchao86
  • 浏览: 378726 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

java操作Excel(Jakarta_POI)

 
阅读更多

      一。 Jakarta POI 是一套用于访问微软格式文档的Java API。

        HSSF对Excel的操作主要是通过下面几个对象实现:
        HSSFWorkbook    工作簿对象对应于Excel文件
        HSSFSheet       Sheet对象对应于Excel中的Sheet
       HSSFRow         行对象表示Sheet中的一行(这个对象在JXL中并没有提供)
       HSSFCell        单元格对象

操作步骤就是用HSSFWorkbook打开或者创建“Excel文件对象”,用HSSFWorkbook对象返回或者创建Sheet对象,用Sheet对象返回行对象,用行对象得到Cell对象,有了Cell对象就随你读写了。下面来看一个动态生成Excel文件的例子:

//创建HSSFWorkbook对象
HSSFWorkbook wb = new HSSFWorkbook();
//创建HSSFSheet对象
HSSFSheet sheet = wb.createSheet("sheet0");
//创建HSSFRow对象
HSSFRow row = sheet.createRow((short)0);
//创建HSSFCell对象
HSSFCell cell=row.createCell((short)0);
//用来处理中文问题
cell.setEncoding(HSSFCell.ENCODING_UTF_16);
//设置单元格的值
cell.setCellValue("单元格中的中文");


cell=row.createCell((short)1);
//用来处理中文问题
cell.setEncoding(HSSFCell.ENCODING_UTF_16);

//设定值为日期
cel1.setCellValue(new Date());


HSSFCellStyle cellStyle = wb.createCellStyle();
//指定日期显示格式
cellStyle.setDataFormat(HSSFDataFormat.getFormat("m/d/yy h:mm"));
cell = row.createCell((short)2);
cell.setCellValue(new Date());
//设定单元格日期显示格式
cell.setCellStyle(cellStyle);




//定义你需要的输出流
OutputStream out = new FileOutputStream("viwo.xls");
//输出Excel
wb.write(out);
out.flush();

HSSF读取文件同样还是使用这几个对象,只是把相应的createXXX方法变成了getXXX方法即可。
只要理解了其中原理,不管是读还是写亦或是特定格式都可以轻松实现,正所谓知其然更要知其所以然。


二。读取Excel文档中的数据
  示例2将演示如何读取Excel文档中的数据。假定在D盘JTest目录下有一个文件名为gongye.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:/JTest/ gongye.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("标题 ");



四。加上response.setContentType("Application/msexcel");
     response.setHeader("Content-disposition","attachment; filename=book.xls" );
然后提交给它的时候会时候会提示下载,
下载的就是生成的EXCEL文件。




分享到:
评论

相关推荐

    java操作Excel(Jakarta_POI)

    ### Java操作Excel(Jakarta POI) #### 一、引言 在企业级应用开发中,经常需要处理Excel文件,例如导出数据为Excel格式、批量导入数据等。Java提供了多种处理Excel的方法,其中最常用的就是`Jakarta POI`库。本篇...

    java操作Excel(Jakarta_POI).pdf

    【Java 操作 Excel 使用 Jakarta_POI】 Jakarta_POI 是 Apache 软件基金会Jakarta 项目的一个子项目,它提供了一套纯 Java 的 API,用于读取、创建和修改 Microsoft Office 格式文件,特别是针对 Excel 文件的处理。...

    java开发Excel所需 poi jxl两种jar包

    本文将深入探讨两种常用的Java库:Apache POI和JXL,它们都提供了处理Excel文件的能力。 Apache POI是Apache软件基金会的一个开源项目,它提供了一个强大的API,允许Java开发者读取、写入和修改Microsoft Office...

    poi excel poi excel poi excel

    Jakarta POI 是 Apache POI 的早期项目名称,它提供了一组 API 来处理 Microsoft Office 文件格式,特别是针对 Excel(`.xls` 和 `.xlsx`)和 Word(`.doc` 和 `.docx`)文件。Apache POI 项目主要由以下几个子项目...

    java 操作excel表格经典例子

    本文将详细介绍如何使用Apache POI进行Java操作Excel的经典案例。 #### 二、Apache POI简介 Apache POI是Apache Jakarta项目下的一个子项目,它是一组用于处理Microsoft Office文档格式的纯Java库。POI支持多种...

    最全最实用的Java操作Excel教程

    POI提供了一组用于操作Microsoft Office文件(如Word和Excel)的Java API。其中,**HSSF** (Horrible Spreadsheet Format) 接口是用于处理Microsoft Excel 97-2002 (.xls) 文件的,而XSSF则用于处理Microsoft Excel ...

    java的POI操作Excel文件.pdf

    POI项目始于Apache的Jakarta子项目,其目标是处理OLE2对象,尤其是MS Excel(97-2002)文件。HSSF接口是POI中最成熟的组件,它允许开发者创建、读取和修改Excel电子表格,提供了对工作表、单元格等属性的精细控制。...

    Jakarta POI 3.0

    Jakarta POI 3.0 的出现极大地简化了Java开发者处理Office文档的工作,尤其是在服务器端的应用,如报表生成、数据导入导出等场景。它的强大功能和开源特性使其成为企业级应用中的重要组件,而3.0版本的发布标志着POI...

    Java操作Excel完美解决方案

    通过使用Jakarta POI的HSSF API,Java开发者能够轻松地实现对Excel文件的读写操作,从而极大地提高了数据处理的效率。无论是简单的数据导入导出还是复杂的报表生成,Jakarta POI都能提供强大的支持。希望本文能帮助...

    java读取excel poi 方法

    **Jakarta POI HSSF** 是 Apache POI 项目中的一个子项目,它专注于使用纯 Java 实现对 Microsoft Excel (.xls) 文件的操作。在实际的开发过程中,特别是在企业级应用中,经常会遇到需要导出数据到 Excel 或者从 ...

    New Text Document (2).rar_POI

    Jakarta POI是Apache软件基金会的一个开源项目,主要致力于处理Microsoft Office格式的文件,特别是Excel。这个"New Text Document (2).rar_POI"压缩包显然包含了一个与使用POI API创建Excel文档相关的示例或教程。...

    java解析Excel的POI框架

    【Java解析Excel的POI框架】是Apache Jakarta项目的一个组件,专门用于处理OLE2对象,尤其是Microsoft Excel文件。它的核心接口HSSF(Horrible Spreadsheet Format)提供了读取、写入和修改Excel文件的能力,使...

    poi excel 模板读取并导出带公式的excel文档

    利用Apache POI库能够实现这一功能,即可以通过Java程序操作Excel文件,包括读取、写入、以及处理Excel中的公式。 #### 二、关键技术点 1. **POI库简介**: - Apache POI是Apache软件基金会的Jakarta项目中的一个...

Global site tag (gtag.js) - Google Analytics