`
gaojingsong
  • 浏览: 1201395 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

java编程语言之POI操作Excel导入(出)小实验

阅读更多

 1.Apache POI简介

Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程式对Microsoft Office格式档案读和写的功能。 .NET的开发人员则可以利用NPOI (POI for .NET) 来存取 POI 的功能。

 

2.POI结构

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格式档案的功能。

 

3、操作效果图



 

4、源码

1)导入数据到Excel

private static void PoiCreateExcel(String outputFile)

throws FileNotFoundException, IOException {

// 创建新的Excel 工作簿

HSSFWorkbook workbook = new HSSFWorkbook();

// 在Excel工作簿中建一工作表,其名为缺省值

// 如要新建一名为"效益指标"的工作表,其语句为:

// HSSFSheet sheet = workbook.createSheet("效益指标");

HSSFSheet sheet = workbook.createSheet();

 

HSSFRow row = sheet.createRow(0);

HSSFCell cell = row.createCell(0);

cell.setCellValue("员工信息表");

sheet.setColumnWidth(2, 15 * 256);//设置第一列的宽度是31个字符宽度

// 生成一个样式

HSSFCellStyle style = workbook.createCellStyle();

// 设置这些样式

HSSFFont font = workbook.createFont();

font.setFontName("华文行楷");//设置字体名称

font.setFontHeightInPoints((short) 16);//设置字号

font.setColor(HSSFColor.RED.index);//设置字体颜色

style.setFont(font);

style.setAlignment(HSSFCellStyle.ALIGN_CENTER);

style.setBorderLeft(HSSFCellStyle.BORDER_THIN);

cell.setCellStyle(style);

//   CellRangeAddress对象其实就是表示一个区域,其构造方法如下:CellRangeAddress(firstRow, lastRow, firstCol, lastCol),

//   参数的说明:

//   firstRow 区域中第一个单元格的行号

//   lastRow 区域中最后一个单元格的行号

//   firstCol 区域中第一个单元格的列号

//   lastCol 区域中最后一个单元格的列号

CellRangeAddress region = new CellRangeAddress(0, 0, 0, 2);

sheet.addMergedRegion(region);

 

// 生成一个样式

style = workbook.createCellStyle();

// 设置这些样式

style.setFillForegroundColor(HSSFColor.SKY_BLUE.index);

style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);

style.setBorderBottom(HSSFCellStyle.BORDER_THIN);

style.setBorderLeft(HSSFCellStyle.BORDER_THIN);

style.setBorderRight(HSSFCellStyle.BORDER_THIN);

style.setBorderTop(HSSFCellStyle.BORDER_THIN);

style.setAlignment(HSSFCellStyle.ALIGN_CENTER);

String[] headers = new String[] { "Id", "Name", "TelPhone" };

// 产生表格标题行

row = sheet.createRow(1);

for (short i = 0; i < headers.length; i++) {

cell = row.createCell(i);

cell.setCellStyle(style);

HSSFRichTextString text = new HSSFRichTextString(headers[i]);

cell.setCellValue(text);

}

 

row = sheet.createRow(2);

String[] emp = new String[] { "0002", "张三丰", "1234567899" };

for (short i = 0; i < emp.length; i++) {

cell = row.createCell(i);

String value = emp[i];

// 如果不是图片数据,就利用正则表达式判断textValue是否全部由数字组成

if (value != null) {

cell.setCellValue((String) value);

} else {

HSSFRichTextString richString = new HSSFRichTextString(

(String) value);

HSSFFont font3 = workbook.createFont();

font3.setColor(HSSFColor.BLUE.index);

richString.applyFont(font3);

cell.setCellValue(richString);

}

}

 

// 新建一输出文件流

FileOutputStream fOut = new FileOutputStream(outputFile);

// 把相应的Excel 工作簿存盘

workbook.write(fOut);

fOut.flush();

// 操作结束,关闭文件

fOut.close();

System.out.println("文件生成...");

}

2)读取Excel数据

private static void PoiReadExcel(String outputFile) throws IOException,

FileNotFoundException {

// 创建对Excel工作簿文件的引用

HSSFWorkbook workbook = new HSSFWorkbook(

new FileInputStream(outputFile));

// 创建对工作表的引用。

// 本例是按名引用(让我们假定那张表有着缺省名"Sheet1")

HSSFSheet sheet = workbook.getSheet("Sheet0");

// 也可用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());

 

int rows = sheet.getLastRowNum();

int cols = row.getLastCellNum();

System.out.println("rows="+rows+",cols="+cols);

 

//遍历Excel

for (Row row1 : sheet) {

for (Cell cell1 : row1) {

System.out.print(cell1 + "\t");

}

System.out.println();

}

}

 

5、验证



 

 

 



 

 

 

 

 

  • 大小: 82.2 KB
  • 大小: 86.7 KB
  • 大小: 92.3 KB
0
0
分享到:
评论

相关推荐

    java_poi实现excel导入导出

    Java POI 的主要特点是可以在 Java 应用程序中读取、写入和操作 Office 文件。 2. Java POI 的组成 Java POI 由多个组件组成,每个组件负责处理不同的 Office 文件格式。以下是 Java POI 的主要组件: * POIFS ...

    Java poi 实现excel导入导出

    在Java编程环境中,Apache POI库是一个非常重要的工具,它允许开发者读取、写入和修改Microsoft Office格式的文件,尤其是Excel(.xlsx 和 .xls)文件。本教程将深入探讨如何利用Java POI库来实现Excel的导入与导出...

    java poi操作excel批量导入导出项目需要的jar包

    Java中的Apache POI库是处理Microsoft Office文档的强大工具,尤其在Excel操作方面。它允许开发者在Java应用程序中创建、修改和读取Excel文件。在进行批量导入和导出Excel数据时,Apache POI是一个非常实用的选择。...

    Java操作Excel之Poi模板导入导出

    在Java编程领域,Apache POI库是一个非常重要的工具,它允许开发者读取、写入以及修改Microsoft Office格式的文件,包括Excel(XLS和XLSX格式)。在"Java操作Excel之Poi模板导入导出"这个主题中,我们将深入探讨如何...

    POI实现Excel导入导出并附带加载进度条

    本项目通过Apache POI实现了Excel的导入与导出功能,并在操作过程中加入了进度条展示,增强了用户体验。 首先,Apache POI的核心类HSSFWorkbook和XSSFWorkbook分别用于处理老版本的.xls和新版本的.xlsx文件。在导入...

    java运用poi把excel导入数据库demo

    在这个“java运用poi把excel导入数据库demo”中,我们将探讨如何利用POI库将Excel数据有效地导入Oracle数据库。 首先,我们需要理解Apache POI的工作原理。POI提供了HSSF和XSSF两个API,分别用于处理旧版的BIFF8(....

    java_poi导入excel通用工具类

    这个"java_poi导入excel通用工具类"是利用Java的POI库和一些额外的技术来实现对Excel数据的导入功能,使得开发人员能够方便地将Excel数据转化为Java对象或者对已有对象进行填充。下面我们将深入探讨相关的知识点。 ...

    java_poi导入excel通用工具类V0915

    "java_poi导入excel通用工具类V0915" 提供了一种通用的方式来处理Excel数据的导入工作,它支持多种赋值方式,包括单个对象、列表对象以及指定坐标的赋值。 首先,让我们深入理解一下这个工具类的主要功能: 1. **...

    java poi 导入大数据量Excel数据 防止内存溢出处理.zip

    Java中的Apache POI库是用于读取和...通过以上策略,可以有效地处理Java POI在导入大数据量Excel时的内存溢出问题,同时提高程序的运行效率。在实践中,应根据具体场景选择合适的优化方法,确保程序的稳定性和性能。

    Excel.zip java-poi-excel 导入Import导出Goout excel表格

    在Java编程领域,Apache POI库是一个非常重要的工具,它允许开发者读取、写入和修改Microsoft Office格式的文件,包括Excel工作簿。本项目"ExcelImport.zip"专注于使用Java POI库处理Excel表格的导入与导出功能,...

    基于Java反射机制的POI实现Excel数据导入_导出.pdf

    基于Java反射机制的POI实现Excel数据导入_导出.pdf 本文主要介绍了基于Java反射机制的POI实现Excel数据导入和导出的技术。该技术通过采用Java反射机制和自定义注解原理,实现了数据库与Excel文件之间的数据交互。...

    java poi操作excel小例子

    Java POI 操作 Excel 是一个常见的任务,在许多业务场景中都需要用到,比如数据导入导出、数据分析等。Apache POI 是一个流行的开源库,它允许开发者使用 Java 来读写 Microsoft Office 格式的文件,其中包括 Excel ...

    java实现Excel导入(POI)

    在Java编程环境中,实现Excel数据的导入是一项常见的任务,尤其在数据处理、报表生成或数据分析等领域。Apache POI是一个流行的库,它允许开发者读写Microsoft Office格式的文件,包括Excel(.xls和.xlsx)。本篇...

    poi作excel导入数据库

    标题中的“poi作excel导入数据库”指的是使用Apache POI库来读取Excel文件,并将数据存储到数据库中。Apache POI是Java平台上的一个开源项目,它提供了处理Microsoft Office格式文档的能力,包括Excel(.xls和.xlsx...

    Java操作Excel之Poi视频教程 java1234出品

    在IT行业中,处理数据是日常任务之一,而Excel作为广泛使用的电子表格工具,与编程语言的结合至关重要。Java POI库就是这样的一个工具,它允许Java开发者读取、写入和修改Microsoft Office格式的文件,包括Excel。本...

    POI技术将excel解析导入mysql.pdf

    根据提供的文件信息,可以看出文档主要阐述了如何使用Apache POI技术解析2003-2007版本的Excel文档,并将解析后的数据导入到MySQL数据库中。文档中分别涉及到Java实体类的设计(User.java),以及数据访问层的设计...

    poi操作excel导入导出,实际项目中应用并且优化

    Apache POI是一个强大的Java库,专门用于处理Microsoft Office格式的文件,尤其是Excel。...通过熟练掌握和应用这些知识点,你可以有效地利用Apache POI处理Excel导入导出任务,满足企业的各种需求。

    java_poi导入EXCEL详细操作

    下面将详细介绍如何使用Java POI进行Excel的导入操作。 首先,你需要在项目中引入Apache POI的相关依赖。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml &lt;groupId&gt;org.apache.poi &lt;artifactId&gt;...

    Excel Java POI导入导出示例

    本示例将详细讲解如何使用Java和Apache POI库进行Excel的导入与导出操作。 首先,你需要在项目中引入Apache POI的Jar包。在提供的压缩包中,应该包含了用于此目的的POI库。确保将这些库添加到你的项目类路径中,...

    Springboot+Poi实现Excel的导入导出

    2. **Excel导入**: - 读取Excel文件:使用POI库,打开本地文件,获取工作簿和工作表。 - 数据解析:遍历每一行,读取每个单元格的数据,根据业务需求进行类型转换。 - 数据验证:对导入的数据进行校验,确保符合...

Global site tag (gtag.js) - Google Analytics