`
zakaz168
  • 浏览: 41905 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

POI读取和生成EXCEL

    博客分类:
  • JAVA
阅读更多
package test.excel;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
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.hssf.util.HSSFColor;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;

/**
 * @ClassName:      OperateExcel.java
 * @PackageName:    test
 * @ProjectName:    healthApp
 * @Copyright:      Copyright(c)Kolter 2012 
 * @DateTime:       Nov 28, 2012 2:18:46 PM 
 * @author          Kolter
 * @version         V1.0 
 * @Readme:
 */
public class OperateExcel {
 
 public static void main(String[] args) {
  new OperateExcel().ReadExelByPOI("C:\\Documents and Settings\\Administrator\\桌面\\地址是否填写.xls");
  new OperateExcel().WriteExcelByPOI("C:\\Documents and Settings\\Administrator\\桌面\\test.xls");
 }
 
 /**
  * 使用POI组件读取Excel文档<br>
  * POI读取Excel步骤:<br>
  * 第一步:加载Excel文件<br>
  * 第二步:指定要读取的sheet<br>
  * 第三步:指定要读取的Row<br>
  * 第四步:获得要读取的Cell<br>
  * @param realPath 读取文件路径
  */
 public void ReadExelByPOI(String realPath) {
  POIFSFileSystem fs = null;
  HSSFWorkbook workbook = null;
  HSSFSheet sheet = null;
  HSSFRow row = null;
  HSSFCell cell = null;
  try {
   fs = new POIFSFileSystem(new FileInputStream(realPath));
   // 创建对Excel工作簿文件的引用
   workbook = new HSSFWorkbook(fs);
   // 创建对工作表的引用。
   // sheet = workbook.getSheet("Sheet1");
      // 本例是按名引用(让我们假定那张表有着缺省名"Sheet1"),
   // 也可用getSheetAt(int index)按索引引用.
   // 在Excel文档中,第一张工作表的缺省索引是0,
   // 其语句为:sheet = workbook.getSheetAt(0);
   sheet = workbook.getSheet("Sheet1");
   // 读取第一行
   row = sheet.getRow(0);
   // 读取第一行第一列
   cell = row.getCell((short)0);
   // 输出数据
   System.out.println(cell.getStringCellValue() + "\t");
   // 遍历数据并输出
   for(int i=0; i < sheet.getLastRowNum(); i++) {
    row = sheet.getRow(i);
    for(int j=0; j < row.getLastCellNum(); j++) {
     cell = row.getCell((short)j);
     System.out.print(cell.getStringCellValue() + "\t");
    }
    System.out.println();
   }
  } catch (FileNotFoundException e) {
   // 提示客户文件未找到
   e.printStackTrace();
  } catch (IOException e) {
   // 提示IO错误
   e.printStackTrace();
  }
 }
 
 /**
  * 使用POI组件保存Excel文档<br>
  * POI保存Excel步骤:<br>
  * 第一步:创建Excel文件<br>
  * 第二步:创建sheet<br>
  * 第三步:创建Row<br>
  * 第四步:创建Cell<br>
  * 第五步:设置格式<br>
  * @param realPath 保存文件路径
  */
 public void WriteExcelByPOI(String realPath) {
  HSSFWorkbook workbook = null;
  HSSFSheet sheet = null;
  HSSFRow row = null;
  HSSFCell cell = null;
  FileOutputStream out = null;
  try {
   // 创建新的Excel工作簿
   workbook = new HSSFWorkbook();
   // 在Excel工作簿中建一工作表,其名为缺省值
   // 如要新建一名为"效益指标"的工作表,其语句为:
   // sheet = workbook.createSheet("效益指标");
   sheet = workbook.createSheet();
   // 在索引0的位置创建行(最顶端的行)
   row = sheet.createRow((short)0);
   //在索引0的位置创建单元格(左上端)
   cell = row.createCell((short)0);
   // 1、创建字体,设置其为红色、粗体:
   HSSFFont font = workbook.createFont();
   font.setColor(HSSFFont.COLOR_RED);
   font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
   // 2、创建格式
   HSSFCellStyle cellStyle = workbook.createCellStyle();
   // 设置字体
   cellStyle.setFont(font);
   // 设置颜色
   cellStyle.setTopBorderColor(HSSFColor.OLIVE_GREEN.index);
   cellStyle.setFillBackgroundColor(HSSFColor.VIOLET.index);
   cellStyle.setBottomBorderColor(HSSFColor.DARK_BLUE.index);
   // 3、应用格式 
   cell.setCellStyle(cellStyle);
   // 定义单元格为字符串类型
   cell.setCellType(HSSFCell.CELL_TYPE_STRING);
   // 设置字符编码
   cell.setEncoding(HSSFCell.ENCODING_UTF_16);
   // 在单元格中输入一些内容
   cell.setCellValue("增加值");
   // 新建一输出文件流
   out = new FileOutputStream(realPath); 
   // 把相应的Excel 工作簿存盘
   workbook.write(out);
   out.flush();
   // 操作结束,关闭文件
   out.close();
   System.out.println("文件生成...");
  } catch(FileNotFoundException e) {
   // 提示客户文件未找到
   e.printStackTrace();
  } catch (IOException e) {
   // 提示IO错误
   e.printStackTrace();
  }
 }
 
 /**
  * 使用jXLS组件读取Excel文档<br>
  * @param realPath 读取文件路径
  */
 /*public void ReadExelByJXLS(String realPath) {
  
 }*/
 
}

 

分享到:
评论

相关推荐

    POI生成Excel POI操作Excel POI读取Excel POI类库

    **POI读取Excel** 读取Excel主要涉及以下步骤: 1. **打开Workbook**:通过 FileInputStream 读取Excel文件,然后创建Workbook对象。 2. **获取Sheet**:从Workbook中获取需要的Sheet。 3. **遍历Row和Cell**:...

    java的poi生成excel图表demo

    在本示例中,我们将深入探讨如何利用POI库来生成Excel中的图表曲线,这对于数据可视化和报告生成非常有用。 1. **Apache POI介绍** Apache POI是一个开源项目,提供了API来处理Microsoft Office格式的文件。在Java...

    Java POI根据模板生成Excel(xlsx)文件

    总的来说,Java POI提供了一套全面的API,允许开发者在Java环境中创建、读取和修改Excel文件。这个库对于需要批量处理Excel数据,或者需要根据动态数据生成报告的场景尤其有用。在实际项目中,除了基本的单元格操作...

    poi-3.0.2 生成excel表工具

    标题提到的"poi-3.0.2 生成excel表工具"就是基于这个库的一个版本,用于生成Excel表格。 Apache POI 3.0.2 版本是较早的一个稳定版本,虽然现在已经有了更新的版本,但在当时,它提供了广泛的Excel文件格式支持,...

    android中poi生成word文档和excel文档

    这个过程需要对XML、Java I/O、Android文件系统权限管理和POI API有深入理解。开发者需要谨慎处理内存管理,因为处理大型Office文件可能导致内存溢出问题。通过合理的设计和优化,我们可以创建高效且功能丰富的文档...

    Java通过POI读取Excel遍历数据,批量生成word文档

    本教程将重点讲解如何使用Apache POI库来读取Excel数据,并基于这些数据批量生成Word文档。Apache POI是一个开源项目,它允许Java开发者处理Microsoft Office格式的文件,如Excel(.xlsx或.xls)和Word(.docx)。 ...

    poi-java生成excel文档

    本篇将详细讲解如何使用POI库在Java中生成Excel文档。 Apache POI是开源项目,提供了HSSF(Horrible Spreadsheet Format)和XSSF(XML Spreadsheet Format)两个API,分别用于处理老版本的BIFF8格式(.xls)和新...

    java poi 根据excel模板生成excel文件

    在Java中,我们可以使用POI API来读取模板文件,然后在模板的基础上填充自定义数据,生成新的Excel文件。 1. **安装和引入POI库** 在Java项目中使用POI,你需要将`poi-ooxml`相关的JAR文件添加到项目的类路径中。...

    操作Excel文件(读取和生成)jxl和poi

    以下是一个使用Apache POI读取Excel文件的示例: ```java import org.apache.poi.ss.usermodel.*; public class 读取Excel文件poi { public static void main(String[] args) throws IOException { // 加载Excel...

    poi利用模版生成excel

    标题提到的是“poi利用模版生成excel”,而描述中提到了使用的环境是JDK 8和Apache POI的版本3.16。 Apache POI 3.16 是一个稳定且功能丰富的版本,支持许多Excel的功能,如公式计算、图表、样式、条件格式等。使用...

    POI生成excel报表

    ### POI生成Excel报表知识点详解 #### 一、Apache POI简介 Apache POI是Apache软件基金会的一个开源项目,主要用于处理Microsoft Office格式...以上就是使用Apache POI生成Excel报表的主要知识点,希望对你有所帮助。

    poi生成excel表格

    Apache POI 是一个开源项目...以上是Apache POI生成Excel表格的基本知识点和操作步骤。通过这些示例,你可以理解如何在Java应用中利用POI进行Excel文件的创建、读取和修改,以及如何结合数据库操作实现数据的导入导出。

    poi导出根据模板导出excel和简单列表导出excel源码

    Apache POI 是一个开源项目,专门用于处理 Microsoft Office 格式的文件,如 Word、Excel 和 PowerPoint。在本案例中,我们关注的是如何使用 Apache POI 库来导出 Excel 文件,特别是根据模板导出和简单列表导出。...

    poi jxl 生成EXCEL 报表

    总的来说,Apache POI 和 JExcelAPI 都是强大的工具,能够帮助Java开发者生成Excel报表。根据项目的具体需求和复杂性,可以选择适合的库进行使用。在实际开发中,务必确保选择的库版本与Java环境兼容,并根据项目...

    POI实现word和excel在线预览

    本项目提供的"POI实现word和excel在线预览"是基于Apache POI的一个实用工具集,它能够帮助开发者实现在Web环境下对这些文件的在线预览功能,无需用户下载文件到本地即可查看内容,提高了用户体验和数据安全性。...

    POI操作Excel完美生成水印

    在Java编程领域,Apache POI 是一个非常流行的库,它允许开发者读取、写入和修改Microsoft Office格式的文件,包括Excel(XLS和XLSX)。本教程将深入探讨如何利用Apache POI来在Excel文件中完美地生成水印。水印通常...

    使用POI筛选字段导出Excel,以及条件查询和指定数据导出

    使用POI筛选字段导出Excel,以及条件查询和指定数据导出

    使用poi根据导入模板生成excel

    在本项目中,“使用poi根据导入模板生成excel”是核心任务,这意味着我们需要利用POI库处理已有的Excel模板,生成新的Excel表格,并填充数据。 首先,我们需要了解Apache POI的基本结构和使用方法。POI提供了HSSF...

    java生成excel文件(poi).rar_POI java_java excel_poi EXCEL模板_poi-3.8-

    在这个“java生成excel文件(poi).rar”压缩包中,我们看到的是一个使用POI库创建Excel文件的示例代码。 Apache POI提供了API来创建、读取和修改Excel文件。在“POI java_java excel_poi EXCEL模板”这一标签中,...

    POI解析excel2007和生成excel2007.docx

    下面我们将详细介绍如何使用POI来解析Excel 2007和生成Excel 2007。 POI解析Excel 2007 在处理大量数据时,Excel是一个非常方便的工具。但是,Excel 2003的最大行数限制为65535行,这对处理大数据量的用户来说是一...

Global site tag (gtag.js) - Google Analytics