/**
* 利用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. 【转】 Pro Android学习笔记(四九):ActionBar(2):Action图标区

    目录(?)[-] ActionBar的隐藏和现实 ActionBar的action图标区 ActionBar的隐藏和现实 ActionBar bar = getActionBar();bar.hide ...

  2. Ruby模块(module)

    Ruby模块(module) 2013-04-03 16:47:09|  分类: Ruby |  标签:ruby  require  load  extend  include  |字号 订阅     ...

  3. Nmap几个常用的参数

    Nmap扫描端口的6种状态: open:端口是开放的 closed:端口是关闭的 filtered:端口被防火墙IDS/IPS屏蔽,无法确定其状态 unfiltered:端口没有被屏蔽,但要进一步确定 ...

  4. 关于使用sklearn进行数据预处理 —— 归一化/标准化/正则化

    一.标准化(Z-Score),或者去除均值和方差缩放 公式为:(X-mean)/std  计算时对每个属性/每列分别进行. 将数据按期属性(按列进行)减去其均值,并处以其方差.得到的结果是,对于每个属 ...

  5. mysql设置远程登录

    服务器上,我们刚安装好MySQL后,是没有办法直接远程的,它只支持本地登录.所以我们必须要对刚安装好的MySQL进行设置,允许远程登录. 1. 使用“mysql -uroot -p”命令可以连接到本地 ...

  6. [转载][效率工具推荐]Mathpix – 将图片数学公式转换为 LaTeX

    转自小众软件:Mathpix – 将图片数学公式转换为 LaTeX Mathpix 是一款跨平台(Windows.macOS.Linux)的 OCR 工具,它能够识别复杂的数学公式,并将其转换为 La ...

  7. 关于audio.js的研究

    ——杂言:audio.js结合使用html5的audio组件实现了音频的原位播放功能.虽然项目里已经使用一段时间了,不过我是最近才开始有所接触,惭愧.个人见解若有不对,请帮忙纠正,谢谢. 官方相关链接 ...

  8. mkfs在特定的分区上建立 linux 文件系统

    Linux mkfs命令用于在特定的分区上建立 linux 文件系统 使用方式 : mkfs [-V] [-t fstype] [fs-options] filesys [blocks]参数 :    ...

  9. Dialog 自定义使用2(进度条)

    1:  自定义的Dialog 代码: public class IphoneProgersssDialog extends Dialog { private Context context; priv ...

  10. 任务调度TimerTask&Quartz的 Java 实现方法与比较

    文章引自--https://www.ibm.com/developerworks/cn/java/j-lo-taskschedule/ 前言 任务调度是指基于给定时间点,给定时间间隔或者给定执行次数自 ...