XLSX

Java 复杂excel报表导出

。_饼干妹妹 提交于 2020-05-01 02:48:32
MyExcel,是一个可直接使用Html文件,或者使用内置的Freemarker、Groovy、Beetl等模板引擎Excel构建器生成的Html文件,以Html文件中的Table作为Excel模板来生成任意复杂布局的Excel的工具包,支持.xls、.xlsx格式,支持对背景色、边框、字体等进行个性化设置,支持合并单元格。 Github: https://github.com/liaochong/myexcel 详细文档: https://github.com/liaochong/myexcel/wiki maven引用: < dependency > < groupId > com.github.liaochong </ groupId > < artifactId >my excel </ artifactId > < version >2 .1.1 </ version > </ dependency > 优点: 可生成任意复杂表格:本工具使用迭代单元格方式进行excel绘制,可生成任意复杂度excel,自适应宽度、高度; 零学习成本:使用html作为模板,学习成本几乎为零; 支持常用背景色、边框、字体等样式设置:具体参见文档-Style-support(样式支持)部分; 支持.XLS、.XLSX:支持生成.xls、.xlsx后缀的excel; 支持低内存SXSSF模式

Spring Boot 入门(十二):报表导出,对比poi、jxl和esayExcel的效率

ⅰ亾dé卋堺 提交于 2020-04-30 22:02:10
本片博客是紧接着 Spring Boot 入门(十一):集成 WebSocket, 实时显示系统日志 写的 关于poi、jxl和esayExcel的介绍自行百度。 jxl最多支持03版excel,所以单个sheet页面最多只能导出65536条数据。 我直接将excel导入到浏览器并打开,以下统计导出时长指将数据从数据库查询,并写入到excel的过程。不包括打开excel所消耗的时间 为了接近真实场景,我建了一个表,一共有32个字段,其中2个id:一个自增长、一个UUID,10个int型字段,10个String字段,10个datatime字段;导出的excel包含了32个字段 我每次导出一个excel后,直接将jvm的内存清空,再进行下一个excel的导出,保证导出excel不受其它线程的影响 我只是为了比较性能,所以没有对excel的样式进行过多的渲染 poi方式,我使用的是刷新硬盘的方式,数据量大于设置的值,就将内存中的数据刷新到硬盘,降低OOM的概率,同时也增加了导出效率 1.pom依赖 以下是poi、jxl和esayExcel的全部依赖 1 <!-- begin poi --> 2 < dependency > 3 < groupId > org.apache.poi </ groupId > 4 < artifactId > poi </ artifactId > 5 <

Spring MVC 实现Excel的导入导出功能(1:Excel的导入)

荒凉一梦 提交于 2020-04-30 19:56:02
简介 这篇文章主要记录自己学习上传和导出Excel时的一些心得,企业办公系统的开发中,经常会收到这样的需求:批量录入数据、数据报表使用 Excel 打开,或者职能部门同事要打印 Excel 文件,而他们又没有直接操作数据库的能力,这时就需要在某些模块中实现导入、导出 Excel 的功能。 接下来,我们就来看看借助哪些库、工具可以实行上述这些需求。 POI 简介 Apache POI 是 Apache 软件基金会的开放源码函式库,POI 提供了 API,可以帮助 Java 程序实现对 Microsoft Office 格式档案的读写功能。 首先需要了解下 Excel 的文件格式,目前主要有两种格式,即 xls 和 xlsx 格式。 xlsx 是从 Office 2007 版开始使用的,使用新的基于 XML 的压缩文件格式取代了当时专有的默认文件格式,在传统文件扩展名后面添加了字母 x 使其占用空间更小,可以向下兼容 xls ,2007 版本后的 Excel 软件都可以操作 xls 和 xlsx 格式文件,而之前的版本只能打开 xls 格式文件。 针对不同 Excel 文档格式,POI 提供了不同的类来处理。 针对 xls 格式,相应的类有: HSSFWorkbook excel 文档对象 HSSFSheet excel 表格对象 HSSFRow excel 表格行对象

POI向Excel的单元格中写入图片

时光总嘲笑我的痴心妄想 提交于 2020-04-30 19:55:41
HSSF是POI工程对Excel 97(-2007)文件操作的纯Java实现 XSSF是POI工程对Excel 2007 OOXML (.xlsx)文件操作的纯Java实现 在POI中有HSSFPatriarch对象,该对象为画图的顶级管理器,它的createPicture(anchor, pictureIndex)方法就能够在Excel插入一张图片。 针对.xls文件导出图片 public class ExcelImageTest { public static void main(String[] args) { FileOutputStream fileOut = null ; BufferedImage bufferImg = null ; // 先把读进来的图片放到一个ByteArrayOutputStream中,以便产生ByteArray try { ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream(); bufferImg = ImageIO.read( new File("E:/测试图片.jpg" )); ImageIO.write(bufferImg, "jpg" , byteArrayOut); HSSFWorkbook wb = new HSSFWorkbook();

【poi导出excel文件】Java:实现文件批量导入导出实践(兼容xls,xlsx)

跟風遠走 提交于 2020-04-30 16:48:55
作者:小卖铺的老爷爷 cnblogs.com/laoyeye/p/6938889.html 1、介绍 java实现文件的导入导出数据库,目前在大部分系统中是比较常见的功能了,今天写个小demo来理解其原理,没接触过的同学也可以看看参考下。 目前我所接触过的导入导出技术主要有POI和iReport,poi主要作为一些数据批量导入数据库,iReport做报表导出。另外还有jxl类似poi的方式,不过貌似很久没跟新了,2007之后的office好像也不支持,这里就不说了。 2、POI使用详解 2.1 什么是Apache POI? Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。 2.2 POI的jar包导入 本次讲解使用maven工程,jar包版本使用poi-3.14和poi-ooxml-3.14。目前最新的版本是3.16。因为3.15以后相关api有更新,部分操作可能不一样,大家注意下。 <!-- poi的包 3.15版本后单元格类型获取方式有调整 --> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.14</version> </dependency>

接口测试笔记(二):测试数据

百般思念 提交于 2020-04-30 08:33:49
(一)说明 相信不管是GUI自动化测试,亦或者是API自动化测试,都离不开测试数据。 这里说的测试数据我理解分为2部分: 1、用例执行前需要的前置条件,例如我验证正确账户、密码能否成功登录,首先就需要一个已经注册的用户。 2、测试用例本身需要的输入及预期结果。例如:调用一个API,我需要设置不同的请求参数,验证不同请求参数下的响应是否符合预期。这里的请求参数和预期结果也是我们的测试数据。 这里主要提供个思路,在API自动化,亦或者GUI自动化中,该怎么管理我们的测试数据(这里针对的是第二种测试数据)。思路大概是:应用工厂设计模式 1、工厂类:接受不同格式的数据,解析并处理为DataFrame格式数据 2、将DataFrame格式的数据处理成字典或列表。 使用工厂模式有个优点是,方便以后的扩展,例如如果有新增的文件格式,只要修改在工厂类中新增该文件格式的实现即可。 (二)简单实现代码 1 import os 2 import pandas as pd 3 4 5 class ParamConfigSourceFactory(): 6 7 def __init__ (self,filename,sheet_name= None): 8 """ 9 工厂设计模式:接受不同格式数据,解析并转换为DataFrame格式数据 10 :param filename: 11 :param

matlab对文本文件、数据文件等的文件读取、操作等实用功能总结

╄→гoц情女王★ 提交于 2020-04-29 13:56:54
matlab对文本文件、数据文件等的文件读取、操作等实用功能总结 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/awakeljw/article/details/76175515 matlab文件读取总结 matlab的文件读取函数功能可以读取各种文件类型,包括 textread(字母和数值每行格式一致) xlsread(读取excel文件) importdata(字母和数值分开,以数字为主,字母只存在前几行) load(纯数据) dlmread(单一分隔符的纯数据或ASCII数据文件) textscan(类似于textread,但使用前必须fopen打开文件) csvread(类似于xlsread,读取.csv格式的文件) fscanf(读取已知文件格式的文本文件) 以上所有的文件读取函数基本可以涵盖我们遇到的所有数据文件类型,具体用法建议参考matlab的帮助文档,其中拿出部分用法进行说明。 1.textread: [column1,column2,...] = textread('filename','%s %d ...','headlines',number,'delimiter',',','emptyvalue',NAN); 1 注释:delimiter定义分隔符的类型,空字符采用NAN代替

Java 添加、删除、移动、隐藏/显示Excel工作表

流过昼夜 提交于 2020-04-29 13:47:48
本文内容将介绍通过Java程序如何添加、删除、移动工作表,以及设置工作表隐藏、显示等操作。文中使用了Java Excel类库(Free Spire.XLS for Java 免费版),可通过 官网下载 包,解压,并将lib文件夹下的Spire.Xls.jar文件导入Java程序;或者通过maven仓库下载并导入,仓库路径配置及依赖添加可参考 教程 。 导入效果如下: 1. 添加、删除工作表 import com.spire.xls.* ; public class AddWorksheet { public static void main(String[] args) { // 加载文档 Workbook wb = new Workbook(); wb.loadFromFile( "test.xlsx" ); // 添加一个新的工作表 Worksheet newsheet = wb.getWorksheets().add("NewSheet" ); newsheet.getCellRange( "E3").setText("新添加的内容" ); // 删除第二个工作表 Worksheet sheet1 = wb.getWorksheets().get(1 ); sheet1.remove(); // 保存文档 wb.saveToFile(

接口自动化测试 python+request+excel(踩‘坑’)

别等时光非礼了梦想. 提交于 2020-04-29 11:13:17
通过运行主函数,返回的参数,报json解析错误 正常的返回参数,应该如图 造成这个原因的是: python从excel中解析出来的数据类型不是字典,是字符串,所以无法传递给requests当做请求参数 需用用json.loads()转成字典格式,然后进行传参 对python从Excel中解析出来的数据类型进行测试一波 # !/usr/bin/env python3 # -*-coding:utf-8-*- # __author__: hunter import xlrd import json import requests data = xlrd.open_workbook( ' D:/hunter_/interfaceTest/interface/tool/demo2.xlsx ' ) sheet = data.sheet_by_index(0) url = sheet.cell_value(1, 5 ) data1 = sheet.cell_value(1, 9 ) # data2 = json.loads(data1) print ( ' 从Excel中提取出来的params为: ' , data1) print ( ' 从Excel中提取出来的params的数据类型为: ' , type(data1)) # print(type(data2)) 结果

xBIM IFC 输出 Excel 报表

流过昼夜 提交于 2020-04-29 10:19:26
目录 xBIM 应用与学习 (一) xBIM 应用与学习 (二) xBIM 基本的模型操作 xBIM 日志操作 XBIM 3D 墙壁案例 xBIM 格式之间转换 xBIM 使用Linq 来优化查询 xBIM IFC 输出 Excel 报表 xBIM IFC 层次结构 xBIM 多个IFC文件合并 xBIM 插入复制功能 XBIM 基于 WexBIM 文件在 WebGL 浏览和加载 IFC 输出Excel 空间报告文件 本示例将展示从IFC文件读取数据所需的一些概念。它使用IFC4 接口,可以同时用于IFC2x3和IFC4版本。创建EXCEL文件,我们使用开源的组件NPOI。这个例子只需要xBIM Essentials。 引用命名空间: using NPOI.SS.UserModel; // EXCEL 组件 using NPOI.XSSF.UserModel; using System.Diagnostics; using System.IO; using System.Linq; using Xbim.Ifc; using Xbim.Ifc4.Interfaces; 主要的功能如下所示: // 从模板初始化NPOI工作簿 var workbook = new XSSFWorkbook( " template.xlsx " ); var sheet = workbook