FileOutputStream fos=null;try {//保存此XSSFWorkbook对象为xlsx文件workbook.write(new FileOutputStream(filename));POIFSFileSystem fs = new POIFSFileSystem();EncryptionInfo info = new EncryptionInfo(EncryptionMode.standard);Encryptor enc = info.getEncryptor();//设置密码enc.confirmPassword("zmf");//加密文件OPCPackage opc = OPCPackage.open(new File(filename), PackageAccess.READ_WRITE);OutputStream os = enc.getDataStream(fs);opc.save(os);opc.close();// **很关键,要先关闭,要不然导致文件损坏打不开**os.close();//把加密后的文件写回到流fos = new FileOutputStream(filename);fs.writeFilesystem(fos);fos.flush();}catch (Exception e) {e.printStackTrace();}finally {try {fos.close();} catch (IOException e) {e.printStackTrace();}}System.out.println("over");
}


excel导出设置密码(文件不会损坏,看关键那一步),,相关推荐

  1. thinkphp3.2.3 excel导出,下载文件,包含图片

    关于导出后出错的问题 https://segmentfault.com/q/1010000005330214 https://blog.csdn.net/ohmygirl/article/detail ...

  2. linux 导出 excel文件名乱码,excel导出,文件名称中文乱码问题 · 大腿的博客

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 记录一个excel导出遇见的中文名称的问题 接到项目需要有excel的导入导出功能,基于poi实现还是挺简单的,文件的导 ...

  3. js读取excel导出json文件

    1.依赖包xlsx npm install node-xlsx 2.代码 const XLSX = require('xlsx') const fs = require('fs')const dest ...

  4. excel文件下载下来损坏 js_使用Java / javascript和apache POI导出.xls文件时获取损坏的文件...

    我正在尝试从Web应用程序下载浏览器中的.xls文件.下面是相同的代码. try(FileInputStream inputStream = new FileInputStream("C:\ ...

  5. 根据children动态复杂表头excel导出_Java高级特性-注解:注解实现Excel导出功能

    注解是 Java 的一个高级特性,Spring 更是以注解为基础,发展出一套"注解驱动编程". 这听起来高大上,但毕竟是框架的事,我们也能用好注解吗? 的确,我们很少有机会自己写注 ...

  6. java数据导出ex_Java高级特性注解:注解实现Excel导出功能

    作者:JerryWu来源:SegmentFault 思否社区 注解是 Java 的一个高级特性,Spring 更是以注解为基础,发展出一套"注解驱动编程". 这听起来高大上,但毕竟 ...

  7. Excel导出失败的解决方案

    我按照同事给的步骤配置excel导出功能(如下所示). 由于导出Excel功能需要服务器安装Microsoft Office Excel应用程序,并配置Asp.Net用户权限,以下是配置的操作步骤: ...

  8. Java导出Excel表格出现文件损坏异常解决方案

    Java导出Excel表格出现文件损坏异常解决方案 问题出现 问题出现 本人遇到这个问题,由于是第一次见,感觉无从下手.但是导出功能很常见,做的也很多,只有这个出现了文件损坏,那很可能是代码写的有问题 ...

  9. npoi导出文件不保存在服务器,winform NPOI excel 导出并选择保存文件路径

    public void ExcelOp(DataGridView gdv,ArrayList selHead) { if (selHead.Count==0) { MessageBox.Show(&q ...

最新文章

  1. 虚拟机安装CentOS 5.5详细过程和上网配置
  2. 最新可用NOD32免ID升级服务器
  3. spark插件剔除步骤
  4. pd17虚拟机启动器怎么生成?快来看看吧
  5. RancherOS v1.5.0发布
  6. mysql用户增删改
  7. 初中女生数学不好能学计算机,初中数学成绩好的女生,多半有这3个“小特征”,学渣可装不来!...
  8. 「leetcode」538.把二叉搜索树转换为累加树【递归】【迭代】详解
  9. louvain算法 matlab,Community_BGLL_Matlab 复杂网络社团发现算法Louvain的 版本,简单实用,欢迎下载 272万源代码下载- www.pudn.com...
  10. Mirth Connect 互联互通 第五章 查询发送者通道
  11. matlab ode 实数,关于ode45中erf函数(输入必须为实数完全数的报错问题)
  12. Linux 实现OpenSSL 服务器端客户端通信
  13. X86服务器CPU的作用,为什么需要基于x86架构的至强处理器?
  14. 深度学习【使用pytorch实现基础模型、优化算法介绍、数据集的加载】
  15. linux .net 控制台应用程序,使用 Visual Studio Code 创建 .NET 控制台应用程序 - .NET | Microsoft Docs...
  16. 三、Camunda工作流的表和用途说明(实践是检验真理的唯一标准)
  17. 项目管理 -- 文件管理
  18. Http1.0 , SPDY , Http2.0
  19. linux下卸载mysql
  20. 华为三层交换机 配置

热门文章

  1. JavaScript阻止冒泡函数
  2. 【WLAN】【基础知识】WIFI那些事儿之BandSteering
  3. Ubuntu16.04如何将桌面上左边任务栏移到屏幕下方
  4. nik collection mac中文版插件内容
  5. javplayer 使用教程_药物设计软件Sybyl教程(一):基于Tripos力场对小分子配体进行结构优化...
  6. 基于微信小程序的奶茶在线预定点单管理系统
  7. 截取string的几种方式
  8. php微信自动回复机器人,微信自动回复机器人功能怎么实现?
  9. python 单下划线及双下划线使用方法
  10. PHP遍历数组有6种方式