- 浏览: 107562 次
- 性别:
- 来自: 上海
-
最新评论
-
18335864773:
用过一次用pageoffice产品生成excel。其实利用Pa ...
java导出多个excel并打成zip包 -
lujialiang:
writeEmailInfo2Excel() 这个方法怎么写 ...
java导出多个excel并打成zip包 -
zhaokui:
,用到了,太感谢了
DES加密 java与.net可以相互加密解密两种方法 -
fengpy2009:
灰常感谢啊
DES加密 java与.net可以相互加密解密两种方法
这里主要是要针对数据量过大,通过生成多个excel文件并打成一个zip压缩包提供下载.
压缩excel的类 ZipUtil:
import java.io.*; import java.util.*; import java.util.zip.ZipOutputStream; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; public class ZipUtil { private static final Log log = LogFactory.getLog(ZipUtil.class); /** * 压缩文件 * * @param srcfile File[] 需要压缩的文件列表 * @param zipfile File 压缩后的文件 */ public static void zipFiles(List<File> srcfile, File zipfile) { byte[] buf = new byte[1024]; try { // Create the ZIP file ZipOutputStream out = new ZipOutputStream(new FileOutputStream(zipfile)); // Compress the files for (int i = 0; i < srcfile.size(); i++) { File file = srcfile.get(i); FileInputStream in = new FileInputStream(file); // Add ZIP entry to output stream. out.putNextEntry(new ZipEntry(file.getName())); // Transfer bytes from the file to the ZIP file int len; while ((len = in.read(buf)) > 0) { out.write(buf, 0, len); } // Complete the entry out.closeEntry(); in.close(); } // Complete the ZIP file out.close(); } catch (IOException e) { log.error("ZipUtil zipFiles exception:"+e); } } /** * 解压缩 * * @param zipfile File 需要解压缩的文件 * @param descDir String 解压后的目标目录 */ public static void unZipFiles(File zipfile, String descDir) { try { // Open the ZIP file ZipFile zf = new ZipFile(zipfile); for (Enumeration entries = zf.entries(); entries.hasMoreElements();) { // Get the entry name ZipEntry entry = ((ZipEntry) entries.nextElement()); String zipEntryName = entry.getName(); InputStream in = zf.getInputStream(entry); // System.out.println(zipEntryName); OutputStream out = new FileOutputStream(descDir + zipEntryName); byte[] buf1 = new byte[1024]; int len; while ((len = in.read(buf1)) > 0) { out.write(buf1, 0, len); } // Close the file and stream in.close(); out.close(); } } catch (IOException e) { log.error("ZipUtil unZipFiles exception:"+e); } } /** * Main * * @param args */ public static void main(String[] args) { List<File> srcfile=new ArrayList<File>(); srcfile.add(new File("e:\\1.xls")); srcfile.add(new File("e:\\2.xls")); srcfile.add(new File("e:\\3.xls")); srcfile.add(new File("e:\\4.xls")); srcfile.add(new File("e:\\5.xls")); File zipfile = new File("e:\\edm.zip"); ZipUtil.zipFiles(srcfile, zipfile); } }
生成多个excel 类:
/** * forward:导出Excel * @throws Exception */ private ModelAndView forwardExport2Excel(HttpServletRequest request, HttpServletResponse response) throws Exception{ try { Integer page=0;//页数 Integer pagesize=Integer.valueOf(PropertiesUtil.getPropertyValue("PAGESIZE"));//每页显示数 Integer total=0;//总数 int pageindex=1;//当前页数 Integer rowfrom = 1; Integer rowto = 10; total =service.getTotal(); if(total<pagesize){ page=1; System.out.println("from:"+rowfrom+"---"+total); List<Object> list = new ArrayList<Object>(); list = service.getAllList(rowfrom,total); JXLUtil.writeEmailInfo2Excel(response, "邮箱信息总览", "titles", list,pageindex); }else{ Integer mode=total%pagesize; if(mode!=0){ page=total/pagesize+1; }else{ page=total/pagesize; } if(total!=0 && page!=0){ while(pageindex<=page ){ if(total<0){ break; } if( total>pageindex*pagesize ){ System.out.println("from:"+(rowfrom)+"----"+pageindex*pagesize); List<Object> list = new ArrayList<Object>(); list = service.getAllList(rowfrom,pagesize); JXLUtil.writeEmailInfo2Excel(response, "邮箱信息总览", "titles", list,pageindex); rowfrom=pageindex*pagesize; pageindex++; }else{ System.out.println("from:"+rowfrom+"--"+total); List<Object> list = new ArrayList<Object>(); list = service.getAllList(rowfrom,total); JXLUtil.writeEmailInfo2Excel(response, "邮箱信息总览", "titles", list,pageindex); break; } } } } List<File> srcfile=new ArrayList<File>(); for(int p=1;p<=page;p++){ srcfile.add(new File(PropertiesUtil.getPropertyValue("URL")+"zipname"+p+".xls")); } File zipfile = new File(PropertiesUtil.getPropertyValue("OUTPATH")+"zipname.zip"); ZipUtil.zipFiles(srcfile, zipfile); String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; writeObject("成功导出excel 地址:<html><a href="+basePath+"zipname.zip>点击下载</a></html>", response); } catch (Exception e) { log.error("error:"+e); } return null; }
jxl生成excel参考我之前的一篇即可
评论
2 楼
18335864773
2017-06-12
用过一次用pageoffice产品生成excel。其实利用PageOffice组件实现后台画出Excel报表是很容易的。与POI、JXL的比较。pageoffice既能在网页里显示编辑Office文档,也能在服务器端执行部分导入导出Office文档内容的任务。pageoffice可以兼容各种浏览器和各种office版本以及wps。
1 楼
lujialiang
2016-12-22
writeEmailInfo2Excel() 这个方法怎么写
发表评论
-
获取用户的msn和邮箱联系人列表,支持的邮箱包括hotmail, gmail, yahoo, sohu, sina, 163, 126, tom, yeah,
2012-06-13 14:47 5816http://code.google.com/p/contac ... -
Java操作Cookie
2011-09-02 09:52 1583Java对cookie的操作比较简 ... -
抽象类与接口的区别
2011-08-26 17:12 727abstract class和interface是Ja ... -
poi读取Excel2007文件
2011-06-16 11:16 2231excel2007同之前excel97-2003在存储数据量上 ... -
java读取property.property文件
2011-06-14 09:35 2307import java.io.IOException; im ... -
Java生成excel文件 JXL
2011-05-24 17:13 2368要使用的jar包 jxl-2.5.7.jar ... -
用于输出object对象中的属性值
2011-04-26 10:46 1638import java.lang.reflect.Invoca ... -
java 生成任意位数随机数
2010-07-06 11:16 2079/** * 生成任意位数随机数 * @param ... -
DES加密 java与.net可以相互加密解密两种方法
2010-03-02 17:34 3699通过这个方法可以实现java和C#相互加密与解密 并能保持解密 ... -
token解决重复提交问题
2009-12-15 15:32 1300如果避免重复提交呢? 请知道的详细说下,或者把文章的链接 ... -
java 获取域名
2009-08-19 14:52 2457import java.util.regex.Matcher; ... -
float类型转int型
2009-02-12 11:03 2369public class test { /** flo ... -
Java开源项目Hibernate包作用详解
2008-12-22 11:27 862Hibernate一共包括了23个jar包,令人眼花缭乱。本文 ... -
用java导出Msn好友及分组信息
2008-12-03 11:16 2004网上也有不少例子,但是有些朋友遇到所谓911错误导 ... -
IntelliJIDEA中文问题解决方案
2008-12-03 11:07 1152IntelliJIDEA中文问题解决方案 ... -
读取配置参数的properties文件,路径获取完美解决
2008-12-01 14:01 3244读取配制文件的时候,路径问题让人挠头,使用下面的方法,可方便获 ...
相关推荐
"多个Excel导出压缩成zip文件"的场景通常是为了解决数据量过大导致的文件管理不便、传输效率低以及存储空间占用过多等问题。下面我们将深入探讨这个话题,主要涵盖以下几个方面: 1. **大数据量导出**: - 当数据...
综上所述,"生成excel并打包成zip文件"这个任务涉及到使用Java编程语言,特别是Apache POI库来生成Excel文件,再结合Java标准库的压缩功能将Excel和文本文件打包成ZIP。整个过程涉及到了文件的创建、写入、压缩和...
在Java编程环境中,实现“将数据导入多个Excel并压缩”的功能是一项常见的任务,特别是在处理大量数据的业务场景中。这个需求通常涉及到数据处理、文件操作和压缩技术。下面,我们将详细探讨实现这一功能的关键知识...
Java后台批量下载文件并压缩成zip下载的方法 Java后台批量下载文件并压缩成zip下载的方法是指在Java后台中批量下载文件,并将其压缩成zip文件下载到本地桌面。该方法具有重要的参考价值,感兴趣的小伙伴们可以参考...
例如,如果你想要将多个sheet页的数据合并到单个数据帧中,你可以使用`pd.concat`函数,它接受一个包含所有sheet数据的字典,并返回一个合并后的DataFrame。如果你需要将处理过的数据导出为单个PDF文件,可能需要...
将这两个目录一起打包成zip文件,即得到"使用POI实现表格导出jar包.zip"。 使用这个jar包时,只需通过Java的`java -jar`命令执行,即可在指定位置生成Excel文件。需要注意的是,由于jar文件包含所有依赖,所以它的...
CSV文件的基本结构是每行由一个或多个字段组成,字段之间用逗号分隔。在JavaCSV库中,主要有两个核心类:`CSVReader`和`CSVWriter`。`CSVReader`用于读取CSV文件,而`CSVWriter`则用于将数据写入CSV文件。 1. CSV...
在实际应用中,这个过程可能会更复杂,因为可能需要处理多个图表、动态数据以及复杂的样式。同时,需要注意的是,直接操作XML可能会破坏文档的结构,因此在修改时要格外小心。Apache POI库提供了丰富的API,虽然可能...
综上所述,"Spire.Pdf_4.11.1.zip"是一个强大的Java PDF处理工具包,它涵盖了PDF处理的多个方面,是开发人员在Java环境下处理PDF文档的理想选择。无论是在企业级应用还是个人项目中,都能发挥出其高效、全面的功能。
综上所述,这个压缩包包含了一系列用于Java开发的库,涵盖了报表生成、XML处理、对象到XML映射、Office文档操作、PDF处理以及项目构建等多个方面。这些库对于进行企业级Java应用开发,特别是处理数据转换和报表生成...
多个数据进行对比这是非常常见的需求,Highcharts 可以让你为每个类型的数据添加坐标轴,每个轴可以定义放置的位置,所有的设置都可以独立生效,包括旋转、样式设计和定位,当然也支持多个数据共用一个坐标轴。...
6. 数据导出:支持将评价结果导出为Excel或其他格式,便于打印或进一步分析。 该系统可能采用SpringBoot作为基础开发环境,SpringBoot简化了SSM的配置,提供了一种快速开发独立应用的方式,集成了各种常用组件,如...
同时,还可以导出为Excel等格式,便于数据共享和处理。 三、数据库设计 系统的核心是数据库,通常采用关系型数据库如Access或SQL Server来存储学生信息。数据库设计应遵循规范化原则,减少数据冗余,提高数据一致...
如果有多引导系统的计算机,必须保证是在包含 Windows 的驱动器上使用该命令。 Diskpart 创建和删除硬盘驱动器上的分区。diskpart 命令仅在使用故障恢复控制台时才可用。 diskpart [ /add |/delete] [device_...