XLSX

超简洁!利用easyExcel导出,读入Excel

狂风中的少年 提交于 2020-08-10 02:00:06
x 深夜,在东莞,7天酒店,打开电脑,访问国内最大的同性交友网站。 日常开发中,导出导入场景非常多,尤其是对于后台管理更是一个列表一个导出,如果从导出的业务中抽离出复用代码,专注于逻辑开发,对于开发者而言非常重要。前有使用POI,但作者还是更喜EasyExcel的简洁高效不拖沓,所以特意写篇文章记录下。 准备工作 准备工作是看文档了解EasyExcel吗?不,我们直接上手吧!我发现最近的业务里面,最简单的例子已经应付下来了!所以准备工作自然只需导入EasyExcel的jar包,这里我们由于是springboot项目,所以直接使用maven。直接上最新的版本了!pom.xml给它加上: xxxxxxxxxx < dependency > < groupId > com . alibaba </ groupId > < artifactId > easyexcel </ artifactId > < version > 2.2 . 5 </ version > </ dependency > 导出 准备工作已经完成,导出开始,首先需要一个Bean类,导出的字段和Excel文件的字段一样即可。@Data是用了lombok,@ExcelProperty则包含了Excel首行的名称和字段所在位置,从0开始,不能重复。 ​ x @Data public class ExportVo {

Python笔记:把结果导出到同一个工作簿里的不同工作表中

百般思念 提交于 2020-08-10 01:36:18
有时候,我们在用Python处理数据后会产生多个结果(主要是DataFrame)。这时,我们可以根据自己的实际需求,把各个结果导出到不同的工作簿中,或者 把多个结果导出到同一个工作簿的不同工作表中 。面对这种需求,我们可以使用 ExcelWriter()函数 把多个结果导出到同一个工作簿的不同工作表中。具体思路如下: # 先加载数据 import pandas as pd df = pd.read_excel(r"C:\Users\QDM\Desktop\Python\1.xlsx") df # 聚合求和 df1 = df.groupby(["商品"])["销量"].sum() df1 # 聚合计数 df2 = df.groupby(["商品"])["销量"].count() df2 # 聚合求最大值 df3 = df.groupby(["商品"])["销量"].max() df3 # 声明一个读写对象 # Excelpath 为文件要存储的路径 writer = pd.ExcelWriter(r"C:\Users\QDM\Desktop\Python\excel.xlsx", engine = "xlsxwriter") # 分别将表df1,df2,df3写入到Excel工作簿中的Sheet1,Sheet2,Sheet3中 # 并命名为“一表”、“二表”、“三表” df1.to

springboot整合easyexcel实现Excel导入导出

喜夏-厌秋 提交于 2020-08-09 17:31:54
easyexcel:快速、简单避免OOM的java处理Excel工具 Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,但POI还是有一些缺陷,比如07版Excel解压缩以及解压后存储都是在内存中完成的,内存消耗依然很大。 easyexcel重写了poi对07版Excel的解析,能够原本一个3M的excel用POI sax依然需要100M左右内存降低到KB级别,并且再大的excel不会出现内存溢出,03版依赖POI的sax模式。在上层做了模型转换的封装,让使用者更加简单方便 详细使用及介绍请参考 官网 快速使用 创建springboot工程,然后引入相关依赖包如下: <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope

Django import-export - letting users import data

谁说胖子不能爱 提交于 2020-08-09 15:03:41
问题 I am trying to use django import-export to let users import their own data. I've integrated it with the admin, and that works well, but I'm having trouble getting the user import side to work. Here are my views: from .models import WordResource from tablib import Dataset from .models import Word from django.contrib import messages # Word import def import_words(request): if request.method == 'POST': file_format = request.POST['file-format'] word_resource = WordResource() dataset = Dataset()

Python操作Excel之根据一个工作簿中的内容修改另一个中作簿

血红的双手。 提交于 2020-08-09 13:58:52
#!/usr/bin/env python # --*-- coding:utf8 --*-- # Author:Zhangbb import openpyxl import os wb1 = openpyxl.load_workbook(r'/home/wzr/音乐/leili.xlsx') wb2 = openpyxl.load_workbook(r'/home/wzr/音乐/wait_del.xlsx') sh1 = wb1['xinqu'] sh2 = wb2.active name_list = [] col_list = [ col for col in sh2.columns] for cell in col_list[1]: if cell.value != "姓名": name_list.append(cell.value) for i in name_list: print(i, end=" ") print() for i in range(2, sh1.max_row+1): if sh1[f"B{i}"].value in name_list: print(f"离职人员:", sh1[f"B{i}"].value) sh1[f"N{i}"] = "离职人员" print(f"N{i} value: ", sh1[f"N{i}"].value) wb1

vue项目使用xlsx-style实现前端导出Excel样式修改(添加标题,边框等),并且上传npm踩坑记录

倖福魔咒の 提交于 2020-08-09 11:41:05
前段时间,我们项目提出一个前端导出Excel表格的需求, 这个很简单,利用xlsx,file-saver很容易实现(网上很多教程)。 后来需要加入标题,标题居中显示,加入边框等等样式需求,这就给我很多困扰,查阅大量资料和研究,最终选定xlsx-style进行修改(借鉴https://www.jianshu.com/p/23ee264ecde8)。 以下便是xlsx-style踩坑之旅: 导入问题cnpm install --save xlsx-style import XLSX from "xlsx-style"报错:This relative module was not found: ./cptable in ./node_modules/xlsx-style@0.8.13@xlsx-style/dist/cpexcel.js 需要修改源码: 在\node_modules\xlsx-style\dist\cpexcel.js 807行 的 var cpt = require(’./cpt’ + ‘able’); 改成 var cpt = cptable; 本地src目录新建vendor/Export2Excel.js: /* eslint-disable */ require('script-loader!file-saver'); import XLSX from 'xlsx

vue项目使用xlsx-style实现前端导出Excel样式修改(添加标题,边框等),并且上传npm踩坑记录

主宰稳场 提交于 2020-08-09 11:40:51
前段时间,我们项目提出一个前端导出Excel表格的需求, 这个很简单,利用xlsx,file-saver很容易实现(网上很多教程)。 后来需要加入标题,标题居中显示,加入边框等等样式需求,这就给我很多困扰,查阅大量资料和研究,最终选定xlsx-style进行修改(借鉴https://www.jianshu.com/p/23ee264ecde8)。 以下便是xlsx-style踩坑之旅: 导入问题cnpm install --save xlsx-style import XLSX from "xlsx-style"报错:This relative module was not found: ./cptable in ./node_modules/xlsx-style@0.8.13@xlsx-style/dist/cpexcel.js 需要修改源码: 在\node_modules\xlsx-style\dist\cpexcel.js 807行 的 var cpt = require(’./cpt’ + ‘able’); 改成 var cpt = cptable; 本地src目录新建vendor/Export2Excel.js: /* eslint-disable */ require('script-loader!file-saver'); import XLSX from 'xlsx

vue+elementUI表格下载为excel

谁说胖子不能爱 提交于 2020-08-09 11:27:11
1:准备工作: 安装插件 cnpm install --save xlsx file-saver 2:页面引入: import FileSaver from 'file-saver' import XLSX from 'xlsx' 3:添加方法: exportWageDetail(){ var xlsxParam = { raw: true }; var wb = XLSX.utils.table_to_book(document.querySelector('#out-table'),xlsxParam); var wbout = XLSX.write(wb, { bookType: 'xlsx', bookSST: true, type: 'array' }) try { FileSaver.saveAs(new Blob([wbout], { type: 'application/octet-stream' }), '薪资明细.xlsx') } catch (e) { if (typeof console !== 'undefined') console.log(e, wbout) } return wbout } 4:在table添加id 导出之后,发现如果是身份证,会变成科学计数法,带着E,网上找半天,找到一个靠谱方法 ![](https://s4.51cto.com

Java使用 POI 操作Excel

﹥>﹥吖頭↗ 提交于 2020-08-09 10:52:25
   Java中常见的用来操作 Excel 的方式有2种:JXL和POI。JXL只能对 Excel进行操作,且只支持到 Excel 95-2000的版本。而POI是Apache 的开源项目,由Java编写的跨平台 Java API,可操作 Microsoft Office。借助POI,可以方便的生成数据报表,数据批量上传,数据备份等工作。 一.简单使用 1.创建Maven工程导入POI坐标 <!-- poi 相关 --> < dependency > < groupId > org.apache.poi </ groupId > < artifactId > poi </ artifactId > < version > 4.0.1 </ version > </ dependency > < dependency > < groupId > org.apache.poi </ groupId > < artifactId > poi-ooxml </ artifactId > < version > 4.0.1 </ version > </ dependency > < dependency > < groupId > org.apache.poi </ groupId > < artifactId > poi-ooxml-schemas </ artifactId > <

Powershell script to unzip xlsx and read contents from a sheet xml file

痞子三分冷 提交于 2020-08-09 10:50:09
问题 Background I am trying to design a script that I can run on a server without an Excel installation or importing modules/libraries. This rules out COM Excel.Application, the ImportExcel module and other 3rd party libraries. Instead, I unzip the excel file into a collection of xml files. I need to parse these xml files in powershell for a given range of cell values spanning multiple Excel sheets. So far, I have written a script to retrieve the sheetIDs: unzip myExcel.xlsx [xml]$workbookXML =