基础

HSSF - 提供读写Microsoft Excel格式档案的功能。(03版本,处理xls)

XSSF - 提供读写Microsoft Excel OOXML格式档案的功能。(07版本,处理xlsx)

HWPF - 提供读写Microsoft Word格式档案的功能。

HSLF - 提供读写Microsoft PowerPoint格式档案的功能。

HDGF - 提供读写Microsoft Visio格式档案的功能。

依赖

根据需要选择不同版本的依赖

        <!--xls(03)-->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.9</version>
</dependency>
 <!--xlsx(07)-->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.9</version>
</dependency>

案例

import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.*;
import org.joda.time.DateTime;
import org.junit.Test; import java.io.FileInputStream;
import java.io.FileOutputStream; public class poi2 { String PATH = "D:\\test\\";
    /**
* 写工作簿
*/
@Test
public void Write03() throws Exception {
//1.创建工作簿
//03版本
Workbook workbook = new HSSFWorkbook();
//07版本
// Workbook workbook = new XSSFWorkbook();

//2.创建 工作表
Sheet sheet = workbook.createSheet("poi技术测试表");
for (int i = 0; i < 100; i++) {
//3.创建行
Row row1 = sheet.createRow(i);
//4.创建单元格
for (int j = 0; j < 10; j++) {
Cell cell11 = row1.createCell(j);
cell11.setCellValue("row"+ i + " 00" + (j+1));
}
}

//生成一张表(IO流)
// 03版本以xls结尾
FileOutputStream fos = new FileOutputStream(PATH + "poi技术测试表.xls");
//07版本就是使用xlsx结尾
// FileOutputStream fos = new FileOutputStream(PATH + "poi技术测试表.xlsx");

//输出
workbook.write(fos);
//关闭流
fos.close();
System.out.println("文件生成完毕");
}

    /**
* 读工作簿
*/
@Test
public void Read03() throws Exception{
//1.获取文件
// 03版本
FileInputStream fis = new FileInputStream(PATH+"poi技术测试表.xls");
//07版本
// FileInputStream fis = new FileInputStream(PATH+"poi技术测试表.xlsx");

//2.创建一个工作簿。使用excel能操作的这边都可以操作!
Workbook workbook = new HSSFWorkbook(fis);
//07版本
// Workbook workbook = new XSSFWorkbook(fis);

//3.获取表
Sheet sheet = workbook.getSheetAt(0);
//当前表中有多少行
int rowCount = sheet.getPhysicalNumberOfRows();
for (int i = 0; i < rowCount; i++) {
//4.获取行
Row row1 = sheet.getRow(i);
//当前行中有多少列
int cellCount = row1.getPhysicalNumberOfCells();
for (int j = 0; j < cellCount; j++) {
//5.获取列
Cell cell1 = row1.getCell(j);
//6.获取行列的值
String stringCellValue = cell1.getStringCellValue();
System.out.println(stringCellValue);
}
}

fis.close();
}
}

java poi技术基础案例的更多相关文章

  1. java poi技术读取到数据库

    https://www.cnblogs.com/hongten/p/java_poi_excel.html java的poi技术读取Excel数据到MySQL 这篇blog是介绍java中的poi技术 ...

  2. java POI技术之导出数据优化(15万条数据1分多钟)

    专针对导出excel2007 ,用到poi3.9的jar package com.cares.ynt.util; import java.io.File; import java.io.FileOut ...

  3. Java绘图技术基础

    public class Demo1 extends JFrame{ MyPanel mp=null; public static void main(String[] args){ Demo1 de ...

  4. Java分布式应用技术架构介绍

    分布式架构的演进 系统架构演化历程-初始阶段架构

  5. Java分布式应用技术架构

    分布式架构的演进 系统架构演化历程-初始阶段架构初始阶段 的小型系统 应用程序.数据库.文件等所有的资源都在一台服务器上通俗称为LAMP特征:应用程序.数据库.文件等所有的资源都在一台服务器上.描述: ...

  6. Java基础-零拷贝技术应用案例

    Java基础-零拷贝技术应用案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 零拷贝技术在Hadoop生态圈中很多组件得到应用,典型的比如kafka组件,它就很成功的应用了零拷贝 ...

  7. java的poi技术读取和导入Excel实例

    本篇文章主要介绍了java的poi技术读取和导入Excel实例,报表输出是Java应用开发中经常涉及的内容,有需要的可以了解一下. 报表输出是Java应用开发中经常涉及的内容,而一般的报表往往缺乏通用 ...

  8. _00017 Kafka的体系结构介绍以及Kafka入门案例(0基础案例+Java API的使用)

    博文作者:妳那伊抹微笑 itdog8 地址链接 : http://www.itdog8.com(个人链接) 博客地址:http://blog.csdn.net/u012185296 博文标题:_000 ...

  9. Java基础扫盲系列(三)— Java内省技术

    前言 Java内省技术属于Java基础体系的的一部分,但是很多人都不甚了解.笔者也是在学习Spring源码的过程中遇到该技术模块的.为了完善技术体系,本文将全面的学习该技术.在提到Java内省技术,就 ...

  10. Java的反射基础技术

    今天本人给大家讲解一下Java的反射基础技术,如有不对的或者讲的不好的可以多多提出,我会进行相应的更改,先提前感谢提出意见的各位了!!! 什么是反射? 反射它是根据字节码文件可以反射出类的信息.字段. ...

随机推荐

  1. VUEX 的使用学习一

    转载请注明出处: 一.Vuex是什么? 介绍:Vuex 是一个专为 [Vue](https://so.csdn.net/so/search?q=Vue&spm=1001.2101.3001.7 ...

  2. Hugging Face 开源库介绍

    Hugging Face 的开源生态今年成长迅速,timm 成为新加入的成员.diffusers.evaluate 以及 skops 等各种库蓬勃发展. Transformers Transforme ...

  3. day07-Spring管理Bean-IOC-05

    Spring管理Bean-IOC-05 3.基于注解配置bean 3.3自动装配 基本说明: 基于注解配置bean,也可以实现自动装配,使用的注解是:@AutoWired或者@Resource @Au ...

  4. vue学习笔记(一)---- vue指令(在vue中使用样式的方式)

    认真学习,认真记录,每天都要有进步呀!!! 加油叭!!! 一.在vue中使用样式的方式: 1. 直接传递一个数组,注意: 这里的 class 需要使用 v-bind 做数据绑定 <style&g ...

  5. DBSCAN学习笔记

    基本概念 核心点:若某个点的密度达到算法设定的阈值,即ε-邻域内点的数量(包括自己)不小于minPts,则该点为核心点. 边界点:在ε-邻域内点的数量小于minPts,但是落在核心点邻域内的点. 噪声 ...

  6. C-07\字符串的输入输出及常用操作函数

    一.算法优化: 减少分支优化 // 求绝对值 int MyAbs(int n) { if (n < 0) { n = ~n + 1; } return n; } // 优化 int MyAbs( ...

  7. Downie V4.6.4 for Mac 视频下载工具

    前言 Downie是Mac下一个简单的下载管理器,可以让您快速将不同的视频网站上的视频下载并保存到电脑磁盘里然后使用您的默认媒体播放器观看它们. ![在这里插入图片描述](https://p3-jue ...

  8. 安装redhat6.10 出现的问题

    安装redhat6.10 操作系统不定时重启情况说明   曾出现报错如下: 在UEFI模式下安装RHEL6.10,安装完毕后系统第一次重启无法进入操作系统,同时屏幕上出现错误提示: Invalid m ...

  9. JavaScript的this指向详解

    一.概念: 函数的上下文(this)由调用函数的方式决定,function是"运行时上下文"策略: 函数如果不调用,则不能确定函数的上下文. 二.规则: 对象打点调用它的方法函数, ...

  10. 02Python输入输出

    输入输出 print()函数 sep=' ' 数据之间一空格分割,默认是空格 end='\n' 在打印后会额外的加一个数据,默认是换行符 print("hello", " ...