java使用poi解密excel文件
这里所说的解密是指数解密文件密码,而非保护工作表或工作博的密码,代码如下:
import java.io.FileInputStream;
import org.apache.poi.hssf.record.crypto.Biff8EncryptionKey;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
/**
*
* <p>类描述:使用poi解密excel </p>
* <p>创建人:wanghonggang </p>
* <p>创建时间:2019年8月13日 下午8:59:35 </p>
* 所需引用jar包:poi和poi-ooxml
*/
public class TestPoi {
/**
*
* <p>方法描述:测试 TODO</p>
* <p>创建人: wanghonggang </p>
* <p>创建时间: 2019年8月13日 下午9:00:05 </p>
* <p>修改记录:</p>
* @param args
* void
*/
public static void main(String[] args) {
try{
POIFSFileSystem pfs = new POIFSFileSystem(new FileInputStream("E:\\test\\2.xls"));
//解密,这个密码不是指保护工作表和工作博密码,而是打开文件密码
Biff8EncryptionKey.setCurrentUserPassword("123");
HSSFWorkbook wb = new HSSFWorkbook(pfs);
//读取测试
HSSFSheet sheet = wb.getSheetAt(0);
HSSFRow row = sheet.getRow(0);
HSSFCell cell = row.getCell(0);
System.out.println(cell.getStringCellValue());
wb.close();
}catch(Exception e){
e.printStackTrace();
}finally {
}
}
}
.xlsx文件解密方法如下:
import java.io.File;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
/**
*
* <p>类描述:使用poi解密excel .xlsx </p>
* <p>创建人:wanghonggang </p>
* <p>创建时间:2019年8月13日 下午8:59:35 </p>
* 所需引用jar包:poi和poi-ooxml
*/
public class TestPoi4 {
/**
*
* <p>方法描述:测试 TODO</p>
* <p>创建人: wanghonggang </p>
* <p>创建时间: 2019年8月13日 下午9:00:05 </p>
* <p>修改记录:</p>
* @param args
* void
*/
public static void main(String[] args) {
try{
Workbook wb = WorkbookFactory.create(new File("E:\\test\\V2.1.xlsx"), "3");
//读取测试
Sheet sheet = wb.getSheetAt(0);
Row row = sheet.getRow(0);
Cell cell = row.getCell(0);
System.out.println(cell.getStringCellValue());
wb.close();
}catch(Exception e){
e.printStackTrace();
}finally {
}
}
}
java使用poi解密excel文件相关推荐
- Java 使用 POI 对 Excel文件 进行读写操作
Java 使用 POI 对 Excel文件 进行读写操作 一.背景 目前正在做一个问卷功能模块,收集完问卷信息后,需要将数据库中的数据导出到Excel数据表中进行留存,因此就学习了在Java中如何对E ...
- java使用poi生成Excel文件并合并单元格
java使用poi生成Excel文件并合并单元格 业务需要根据 分管部门 字段进行合并,现在提供一种思路. controller层 @Inject(target = "/inf ...
- 功能演示:使用Java加密和解密Excel文件
MS Excel提供了广泛的功能,可以无缝保存和分析数据.可以使用VBA模块执行计算,生成图表以及定义自定义逻辑.知道电子表格中数据的重要性,MS Excel允许您使用加密保护工作簿.此外,也可以用密 ...
- java使用POI实现excel文件的读取,兼容后缀名xls和xlsx
首先,引入所需的jar包: 如果是maven管理项目的jar包,只需在pom.xml中加上: [html] view plaincopy <!-- https://mvnrepository.c ...
- Java使用POI读取Excel文件
上篇文章记录了简单的POI创建Excel文件,依赖导入可参考上篇 POI读取excel中公式 @Testpublic void testRead() throws Exception {//读取文件的 ...
- Java使用POI操作Excel文件
我们可以使用POI操作Excel文件,本文主要介绍:"导入POI的Maven依赖"."创建Poi对象"."Poi读取Excel工作表数目". ...
- java使用poi对excel文件的加密解密
1.首先pom文件引入poi包,如下: <?xml version="1.0" encoding="UTF-8"?> <project xml ...
- java使用poi给excel文件插入数据
excel模板文件 代码 package com.example.demo;import java.io.File; import java.io.FileInputStream; import ja ...
- java使用poi解析Excel文件
本文取自http://www.cnblogs.com/hongten/p/java_poi_excel_xls_xlsx.html java中读取Excel文件并解析 Excel2007及以前的文件使 ...
最新文章
- Oracle 11gR2 使用 RMAN duplicate from active database 复制数据库
- 克拉克拉(KilaKila):大规模实时计算平台架构实战
- rust windows 交叉编译_交叉编译问题,求指教
- C#实现 UDP简单广播
- java界面 文件选择器_掌握java技术 必备java工具应用知识
- matlab按某一列排序
- Android--启动拍照功能并返回结果
- String 源码探究
- Java(31)_JDBC连接mysql数据库(一)
- 深入理解android 博客,深入理解Android中ViewGroup
- IntelliJ idea 主题包下载以及安装
- linux wakeup,linux内核3.4基于wakeup
- 晶联讯JLX12864G-290液晶,STM32+HAL库 SPI显示成功。
- ibm服务器修复安装win7系统,联想thinkpad无法开机重装win7,教你重装系统攻略
- java 统计文本中出现概率最高的10个字符串!!
- 银行软件测试面试题目总结,希望可以帮到你
- 深度学习之梯度裁剪(Gradient Clipping)
- 基于特征的图像匹配算法,图片相似度匹配算法
- DockerHub入门
- 黑客攻防从入门到精通-手机安全篇