/**
* 利用POI操作Excel表单
*
* 需要jar包:
* HSSF针对03及以前版本,即.xls后缀
* |---poi-3.16.jar
* XSSF针对07及以后版本,即xlsx后缀
* |---poi-3.16.jar
* |---poi-ooxml.3.16.jar
* |---poi-ooxml-schemas-3.16.jar
* |---xmlbeans-2.6.0.jar
* |---commons-collections4-4.1.jar
*
* 工作簿:Workbook
* 工作表:Sheet
* 行: Row
* 表格:Cell
*/
public class Demo { /**
* 读取Excel表格
* @throws IOEception
* @throws InvalidFormatException
* @throws EncryptedDocumentException
*/
@Test
public void readExcel() throws EncryptedDocumentException, InvalidFormatException, IOException {
//工作簿
Workbook workbook = WorkbookFactory.create(new File("src/userExce1.xls"));
//工作表
Sheet sheet = workbook.getSheetAt();
//行
Row row = sheet.getRow();
//列
Cell cell = row.getCell(); System.out.println("表格值为:" + cell.getStringCellValue());
} /**
* 创建Excel表格
* @throws IOException
* @throws InvalidFormatException
* @throws EncryptedDocumentException
*/
@Test
public void writeExcel() throws EncryptedDocumentException, InvalidFormatException, IOException {
//工作簿
Workbook workbook = new XSSFWorkbook();
//工作表
Sheet sheet = workbook.createSheet("我的第一个sheet");
//行
Row row = sheet.createRow();
//列
Cell cell = row.createCell(); cell.setCellValue("哈哈表格插入一个内容"); workbook.write(new FileOutputStream("c:/test.xlsx"));
} /**
* 读取Excel表格,修改样式和内容并保存
* @throws IOEception
* @throws InvalidFormatException
* @throws EncryptedDocumentException
*/
@Test
public void readAndModifyExcel() throws EncryptedDocumentException, InvalidFormatException, IOException { String filename = "src/userExcel.xlsx";
File file = new File(filename); System.out.println(file.getAbsolutePath()); Workbook workbook = WorkbookFactory.create(file);
Sheet sheet = workbook.getSheetAt(); //合并单元格,在工作表添加合并单元格
CellRangeAddress headSpan = new CellRangeAddress(, , , );
sheet.addMergedRegion(headSpan); //在合并的位置设置表头文字
Row row = sheet.createRow();
Cell cell = row.createCell();
cell.setCellValue("这是表头"); //写入文本中
String savedName = filename.matches("\\S+\\.xls") ? "c:/" + filename.replace("src/", "") : "c:/" + filename.replace("src/", "");
workbook.write(new FileOutputStream(savedName));
} }

excel基础元素

工作簿
工作表(属于工作簿)
行(属于工作表)
单元格(属于行;由行和列确定)

-------------操作excel
1、创建/读取工作簿
2、创建/读取工作表
3、创建/读取行
4、创建/读取单元格

-----------excel样式

合并单元格对象(CellRangeAddress)属于工作簿;运用于工作表

CellRangeAddress(int firstRow, int lastRow, int firstCol, int lastCol) 起始行号,结束行号,起始列号,结束列号

样式是属于工作簿的;运用于单元格

字体是属于工作簿的;加载于样式;通用样式运用于单元格

Java操作Excel之POI简单例子的更多相关文章

  1. 一脸懵逼学习Java操作Excel之POI(Apache POI)

    Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能. 1:下面简单的程序来创建一个空白Microsoft ...

  2. java操作excel总结---poi

    前不久做过Excel的导入导出功能,其主要的难点是java如何操作Excel文档.现在就来介绍一下利用Apache的poi如何操作Excel. 1.准备工作:导入Apache POI的相关jar包,P ...

  3. Java 操作Excel 之Poi(第一讲)

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

  4. Java操作excel(POI)

    由于在项目中使用了将excel数据导入到数据库.在这里分享一下. 这里使用的POI方式,支持两种格式(xls,xlsx) package com.entity; import java.io.File ...

  5. java操作Excel的poi基础语法

    创建一个简单的实列 package com.java.poi; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache ...

  6. java操作Excel的poi的简介

    一.POI概述 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能. 结构: HSSF - 提供读写Mi ...

  7. java操作Excel之POI(5)利用POI实现使用模板批量导出数据

    后台导出方法: 在源文件夹src下面放个准备好的模板:/com/cy/template/userExportTemplate.xls,这个模板有头部一行: /** * 后台导出方法 * 利用POI实现 ...

  8. java操作Excel之POI(4)利用POI实现数据的批量导出

    后台导出方法: /** * 后台导出方法 * 利用POI实现数据的批量导出 */ public String export() throws Exception{ Connection con = n ...

  9. Java操作Excel之Poi

    package com.java1234.poi; import java.io.FileOutputStream; import org.apache.poi.hssf.usermodel.HSSF ...

随机推荐

  1. 转载:oracle用户创建及权限设置

    权限: create session create table unlimited tablespace connect resource dba 例: #sqlplus /nolog SQL> ...

  2. content-disposition attachment filename 在Firefox和IE中得到不同的结果

    在Firefox中需要把filename 用双引号包起来,才能得到想要的名字,不然如果含有空格,会丢掉空格后面的部分.而IE会把空格转为_,因此也需要HttpUtility.UrlPathEncode ...

  3. jquery.html5uploader.js 上传控件

    插件地址:http://blog.csdn.net/never_say_goodbye/article/details/8598521 先上个效果图: 相比来说,效果还是很不错的 使用MVC3做服务器 ...

  4. zookeeper.out: Permission denied错误解决方法

    [hadoop@node1 root]$ zkServer.sh start JMX enabled by default Using config: /opt/software/zookeeper- ...

  5. .Net下RabbitMQ发布订阅模式实践

    一.概念AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计.消息中间件主要用于组件之间的解耦,消息的发 ...

  6. Angular13 Angular2发送PUT请求在后台接收不到参数

    1 问题描述 利用angular2发送PUT请求时,后端接收不到参数 2 问题诊断 前段参数格式问题,后端获取参数的方法不对 3 解决问题 angular前段:将所有参数编程JSON字符串形式 spr ...

  7. ubuntu下hive-0.8.1配置

    1.下载hive包wget http://labs.mop.com/apache-mirror/hive/stable/hive-0.8.1.tar.gz,并用tar -xzvf 将其解压到要安装的目 ...

  8. java File基本操作,以及递归遍历文件夹

    java 的文件操作,相对来说是比较重要的,无论是编写CS还是BS程序,都避免不了要与文件打交道,例如读写配置文件等.虽然现在很多框架都直接帮你做好了这一步! java.io.File 底层是调用与c ...

  9. 7.25实习培训日志-Oracle SQL(一)

    Oracle SQL(一) 重点 尽量避免select *,影响性能,不直观. 慎用Distinct,会排序,影响性能,用exists 排序尽量利用索引,索引有序 索引列不要加函数,会使索引失效 外连 ...

  10. hdu1086

    #include <iostream>#include <stdio.h>#include <string.h>#include <stack>#inc ...