今天学习了Excel数据的写入和读取,这里做下记录

参考网址

POI – Excel参考文档

POI介绍

POI是Apache软件基金会用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程序对Microsoft Office格式档案读和写的功能。POI为“Poor Obfuscation Implementation”的首字母缩写,意为“简洁版的模糊实现”。
所以POI的主要功能是可以用Java操作Microsoft Office的相关文件,但是一般我们都是用来操作Excel相关文件。

使用前提

添加依赖

         <!--POI报表--><dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.14</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>3.14</version></dependency>

注意:

操作Excel文件区分版本:
2003版本(包含2003)以前的扩展名为.xls需要用HSSFWorkbook类操作
2007版本(包含2007)以后的扩展名为.xlsx需要用XSSFWorkbook类操作
这里我是用的是2007版本

代码实现

读取文件数据

 /*** 使用POI读取Excel文件数据*/@Testpublic void read() throws IOException {//1.使用流读取文件   --文件路径自己更改FileInputStream inputStream =new FileInputStream(new File("C:\\Users\\hp\\Desktop\\aaaaa.xlsx"));//2.使用xssf创建workbookXSSFWorkbook workbook = new XSSFWorkbook(inputStream);//3.使用sheet-----根据索引XSSFSheet sheet = workbook.getSheetAt(0);//日期格式DataFormatter formatter = new DataFormatter();for (Row cells : sheet) {System.out.println(cells);for (Cell cell : cells) {/*** 输出字符串数据,如果有其他类型,运行会报错,不会显示其他格式的数据* 要输出其他格式,需选择输出的格式,如以下:* getStringCellValue()   字符串数据* getDateCellValue()     时间类型*/
//                System.out.println(cell.getStringCellValue());//转换数据中含有日期的日期格式String text = formatter.formatCellValue(cell);System.out.println(text);}}workbook.close();}

效果图

写入文件数据

 /*** 写入数据*/@Testpublic void write() throws IOException {//创建ExcelXSSFWorkbook workbook = new XSSFWorkbook();//2.创建sheetXSSFSheet sheet = workbook.createSheet("sheet0");//3.row cell-- 创建行表头XSSFRow title = sheet.createRow(0);//创建cell单元格--表头字段title.createCell(0).setCellValue("姓名");title.createCell(1).setCellValue("地址");title.createCell(2).setCellValue("年龄");//添加表数据XSSFRow dataRow = sheet.createRow(1);dataRow.createCell(0).setCellValue("张三");dataRow.createCell(1).setCellValue("河南省");dataRow.createCell(2).setCellValue("20");//写入流  -- 文件路径自己修改FileOutputStream outputStream =new FileOutputStream(new File("C:\\Users\\hp\\Desktop\\wwww.xlsx"));workbook.write(outputStream);outputStream.flush();workbook.close();}

效果图

POI-Excel表格使用流读取和写入相关推荐

  1. python3 写入excel表格数据_Python3读取和写入excel表格数据

    目录 python操作excel主要用到 xlrd和xlwt 这两个库,xlrd读取excel表格数据, 支持 xlsx和xls格式的excel表格 :xlwt写入excel表格数据: 一.pytho ...

  2. python对Excel表格数据进行读取和写入

    1. 功能分析 1.1加载文件夹内所有的Excel数据: 1.2 生产贡献度分析图表(以柱状图显示表格数据): 1.3提起Excel表格中指定列数据: 1.4定向筛选所需数据: 1.5多表数据统计排行 ...

  3. java使用poi.xssf 写入内容到excel表格中 和 读取 表格里面的数据

    一.java使用poi.xssf 写入内容到excel表格中 public class TestExcel {//创建一个excel工作簿public static String outputFile ...

  4. Java实战—POI操作Excel文档、读取、写入、合并单元格

    一.POI项目简介 POI全称 Poor Obfuscation Implementation,利用POI接口可以通过JAVA操作Microsoft office 套件工具的读写功能.官网:http: ...

  5. java中poi导出Excel表格(前台流文件接收)

    java中poi导出Excel表格,前端以流的方式接收,而非直接生成文件再下载,解决多台服务器部署后,路径地址不统一导致的下载问题. 生成Excel示例图: 2.代码说明 ① 在上次的基础上增加了底部 ...

  6. html 查看excel表格,html展示excel表格数据-html读取本地excel文件并展示

    怎么用html实现excel表格 首先html不能读取本地excel文件 其次就算是javascript 也是不允许的 这是为了安全考虑 如果前端脚本可以读取本地文件 那很不安全 如何将excel上的 ...

  7. 使用PHPExcel 对表格进行,读取和写入的操作。。。。

    下面的代码是使用PHPExcel 对多个表格数据进行读取, 然后整合的写入新的表格的方法!!!代码有点粗糙 , 多多保函!!! 这里有些地方注意下,如果你的表格数据过大, 一定要记得修改php.ini ...

  8. matlab读数据写入excel文件路径,MATLAB读取和写入Excel文件

    clc; clear all; [numeric_data text_data rawdata] = xlsread('aaa.xls'); headings = rawdata(1,:)  % ge ...

  9. mac如何用python打开excel,Mac——利用Python读取与写入Excel文档

    Mac--利用Python读取与写入Excel文档 目的:按照自定义的格式写入或读取Excel文档,如标红加粗等 Python代码: import xlwt import pandas as pd d ...

最新文章

  1. SpringBoot集成Druid
  2. SWIG,C#沟通C++的桥梁
  3. redhat-problem to be research
  4. C#中委托与事件的使用-以Winform中跨窗体传值为例
  5. C语言,字符串指针做函数参数
  6. OSI七层模型都是什么?
  7. 用R设定随机种子的目的和方法
  8. WINDOWS下SQL2016安装
  9. Unity3d设置成中文版
  10. 《算法设计与分析基础 第二版》pdf
  11. java quic kcptun_Server-网络加速Kcptun
  12. 关于STM8S003F3P6开发的笔记v
  13. 微信订阅推送通知实现
  14. 老程序员告诉你人工智能工程师与Python工程师有什么区别?
  15. 可靠传输的实现机制——回退N帧协议GBN(Go Back N)
  16. 飞腾新8核服务器芯片,国产飞腾桌面级CPU发布:最高2.6GHz 八核只要25W
  17. 计算机文件路径的表示
  18. SAP顾问生涯闲记:2016年越南鞋厂项目回忆
  19. 三维地图之Google earth安装使用
  20. 【转】LVTTL与LVCMOS区别

热门文章

  1. java操作题37套
  2. 3亿用户背后的增长与转型随手记依然安全
  3. Franka Emika新款机器人FP3震撼发布,带来全新生态,重新定义协作机器人
  4. 如何规划好自己毕业开始的十年职业生涯?
  5. 2021年抗菌药发展环境(PEST)分析:老龄化进程加快推动抗菌药行业发展[图]
  6. 把Hyper-V Server 2008R2装进USB存储设备
  7. 漫画 | 大数据开发有多难?
  8. rabbitmq端口
  9. MyBatis进阶七:MyBatis整合C3P0连接池;
  10. java redis sentinel_Java中的Redis 哨兵高可用性