poi

Excel导出导入

梦想与她 提交于 2020-01-16 16:10:56
1. EasyExcel介绍 1.1 为什么使用EasyExcel? Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,但POI还是有一些缺陷,比如07版Excel解压缩以及解压后存储都是在内存中完成的,内存消耗依然很大。easyexcel重写了poi对07版Excel的解析,能够原本一个3M的excel用POI sax依然需要100M左右内存降低到几M,并且再大的excel不会出现内存溢出,03版依赖POI的sax模式。在上层做了模型转换的封装,让使用者更加简单方便 写的内容大致和 阅读官方文档 差不多 2. 开始使用 2.1 引入jar < ! -- easyexcel插件 -- > < dependency > < groupId > com . alibaba < / groupId > < artifactId > easyexcel < / artifactId > < version > 2.1 .4 < / version > < / dependency > < ! -- lombok插件 -- > < dependency > < groupId > org . projectlombok < / groupId > <

EasyExcel

两盒软妹~` 提交于 2020-01-16 11:19:23
1、 AVA解析Excel工具easyexcel Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,但POI还是有一些缺陷,比如07版Excel解压缩以及解压后存储都是在内存中完成的,内存消耗依然很大。easyexcel重写了poi对07版Excel的解析,能够原本一个3M的excel用POI sax依然需要100M左右内存降低到几M,并且再大的excel不会出现内存溢出,03版依赖POI的sax模式。在上层做了模型转换的封装,让使用者更加简单方便 2、github地址: https://github.com/alibaba/easyexcel 3、官方示例: https://github.com/alibaba/easyexcel/blob/master/src/test/java/com/alibaba/easyexcel/test/demo/read/ReadTest.java 官方文档已经说的很清楚了,我这里就不在重复 来源: https://www.cnblogs.com/ywf520/p/12200023.html

idea中maven下的jar包报错有下划线问题解决

笑着哭i 提交于 2020-01-14 02:14:23
今天想要加入一个导出excel表格的接口,在maven导入依赖包poi的时候出现了依赖报错的情况,右侧的maven项目管理也是报错。 标注的地方为红色 排查发现 Project Structure 下的poi、poi-ooxml、poi-scratchpad三个包的sources和javaDocs都已经下载了,但是classes没有下载。 解决方法 方法1、可以在 Maven Repository网站 下找到相应的jar包。再放到maven 本地仓库的相应文件夹目录下 方法2、其实这个问题是maven下载jar包不完整的情况。maven给我自动下载的jar包仅仅只有sources.jar和javadoc.jar,因此才会缺少classes下的相应jar包,令人惊讶的是这还是我在setting-Maven-importing下设置了Automatically download的情况下才给我下载的。 classes、sources、javadoc的区别是: classes的jar,是直接编译好的class文件,可以直接被虚拟机运行的,因此运行需要这个。 sources的jar,就是给开发人员看的,可以看到jar包里面注释说明,方便学习。 Javadoc的jar,也和sources的jar差不多。 因此解决方法就是: 点击这个按键,输入 mvn -U idea:idea 等运行结束

POI的入门:概述和创建EXCEL

∥☆過路亽.° 提交于 2020-01-12 13:46:48
POI结构说明 HSSF提供读写Microsoft Excel XLS格式档案的功能。 XSSF提供读写Microsoft Excel OOXML XLSX格式档案的功能。 HWPF提供读写Microsoft Word DOC格式档案的功能。 HSLF提供读写Microsoft PowerPoint格式档案的功能。 HDGF提供读Microsoft Visio格式档案的功能。 HPBF提供读Microsoft Publisher格式档案的功能。 HSMF提供读Microsoft Outlook格式档案的功能。 API介绍 API名称 Workbook Excel的文档对象,针对不同的Excel类型分为:HSSFWorkbook(2003)和XSSFWorkbool(2007) Sheet Excel的表单 Row Excel的行 Cell Excel的格子单元 Font Excel字体 CellStyle 格子单元样式 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache

java多线程导入excel(poi)

让人想犯罪 __ 提交于 2020-01-12 11:36:04
导入excel util 1 /** 2 * @Description: excel导入工具类 3 4 * @Author: hg 5 6 * @CreateDate: 2019/6/4 11:58 7 8 */ 9 @SuppressWarnings("all") 10 public class POIUtil<T> { 11 12 private Logger logger = LoggerFactory.getLogger(this.getClass()); 13 14 private Workbook wb; 15 16 private String[] property; 17 18 private Class<T> c; 19 20 private String filePath; 21 22 private int startRow; 23 24 private int startColumn; 25 26 //是否需要hash 27 private boolean isHash = false; 28 29 //存放hash集合 30 private HashSet<Integer> hashSet; 31    32 private CopyOnWriteArrayList beanList; 33 34 public CopyOnWriteArrayList

poi对excel的基本读写操作

喜你入骨 提交于 2020-01-12 07:39:19
最近简单的弄了下poi对excel的应用,为方便自己以后的使用就把一些基本操作记录下来,其他更复杂的操作可以等以后有需求的时候再来深入了解一番! 写操作: Java代码 /** * * 层次结构就是workbook-->Sheet-->Row-->Cell * 只要按照这种层次结构操作就不会有什么大的问题 * @author Administrator * */ public class Test1 { public static void main(String args[]) throws IOException { //HSSFWorkbook对应的是2003 //XSSFWorkbook对应的是2007 //对于03和07它们的操作都是差不多的,只是在需要用07的时候把相应的HSSF前缀改成XSSF前缀就可以了 //第一步建一个工作簿,即workbook Workbook workbook = new HSSFWorkbook(); //第二步建一个工作表单,急sheet Sheet sheet = workbook.createSheet( "mysheet1"); for ( int i= 0;i< 5;i++) { //有了表单以后就是行Row了, Row row = sheet.createRow(i); for ( int j= 0;j< 5;j++) { /

Java POI 实现Excel文件读写操作

我怕爱的太早我们不能终老 提交于 2020-01-12 01:03:50
写操作: package com.zhao.poi; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import org.apache.commons.io.FileUtils; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFCellStyle; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; public class PoiExcle { /* *POI写入Excle文件内容 */ public static void main(String[] args) { //创建工作薄 HSSFWorkbook workbook=new HSSFWorkbook(); //创建sheet HSSFSheet sheet=workbook.createSheet(); //创建第一行row HSSFRow

Poi读取Excle报错 java.util.zip.ZipException: invalid stored block lengths

僤鯓⒐⒋嵵緔 提交于 2020-01-11 04:59:11
参考: https://www.cnblogs.com/YJZUUID/p/9295241.html 使用excel模板导出,excel模板放在classpath下的(idea中resources目录),程序运行时,使用Resouce对象加载文件流,利用 inputStream 实例化XSSFWorkbook对象 Resource resource = new ClassPathResource("templates/"+template); InputStream inputStream = resource.getInputStream(); Workbook workbook = new XSSFWorkbook(inputStream); 执行到 Workbook workbook = new XSSFWorkbook(inputStream); 报错java.util.zip.ZipException: invalid stored block lengths 参考资料,应该是编译代码时,把excel模板文件也重新编码了,导致excem模板文件格式损坏 解决方案,添加maven-resources-plugin插件,指定excel文件不编码 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId

Springboot 之 使用POI读取解析Excel文件

自闭症网瘾萝莉.ら 提交于 2020-01-10 13:00:29
1、引入依赖jar包。 在pom.xml中引入两个依赖的包即可: <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>RELEASE</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>RELEASE</version> </dependency> 2、读取xxx .xlsx @GetMapping(value = "/impPriceRecord") public InvokeResult impPriceRecord() throws Exception { try { List<AmoycarClue> infos = new ArrayList<AmoycarClue>(); InputStream is = new FileInputStream("D:/xxx.xlsx"); XSSFWorkbook xssfWorkbook = new XSSFWorkbook(is); XSSFSheet xssfSheet = xssfWorkbook.getSheetAt(0);

百度AI攻略:百度地址识别

喜欢而已 提交于 2020-01-10 09:10:13
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 1.功能描述: 百度地址识别精准提取快递填单文本中的姓名、电话、地址信息,通过自然语言处理辅助地址识别做自动补充和纠正,生成标准规范的结构化信息,大幅提升企业效率。 地址信息提取:精准提取文本填单中的地址信息,并按省、市、区、街道、详细地址的格式结构化输出 地址纠正:针对地址信息中用户填错的省、市、区、街道等字段内容进行辅助纠正 地址补全:结合地图POI数据,帮助补全用户在地址填写步骤中缺失的地理位置信息 姓名信息提取:精准提取文本填单信息中收件人或寄件人的名称,并输出结构化信息 电话信息提取:精准提取文本填单信息中寄件人或收件人的联系方式,并输出结构化信息 2.平台接入 具体接入方式比较简单,可以参考我的另一个帖子,这里就不重复了: http://ai.baidu.com/forum/topic/show/943327 3.调用攻略(Python3)及评测 3.1首先认证授权: 在开始调用任何API之前需要先进行认证授权,具体的说明请参考: http://ai.baidu.com/docs#/Auth/top 具体Python3代码如下: # -*- coding: utf-8 -*- #!/usr/bin/env python import urllib import base64 import json