用poi-3.6-20091214.jar 实现java给excel资料加密
用poi-3.6-20091214.jar 实现java给excel文件加密
我用了网上的很多方法,但是都没有成功!
HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(file));
// 设置密 码 保 护 ·
wb.writeProtectWorkbook("111111", "owner");
红字标识的是这个架包里面没有构造这个方法?很奇怪,问问大家,可有用java实现对excel文件进行加密的啊?要具体能用的!非诚勿扰啊!
[解决办法]
你找的API是对的啊,为什么没有跑成功呢?是不是你拿Excel2007格式文件在试?
给你贴一个我实现的实例,有几点注意
1. 现在的POI3.5 3.6的XSSF部分都不支持对Excel的xlsx文件进行加密,所以要用2003格式文件
2. 运行实例完毕之后,再次打开文件,可以只读打开,你选择输入密码通过非只读模式打开
3. 给贴的仅仅是一个demo,具体的代码需要再调整的优雅一些
import org.apache.poi.hssf.usermodel.HSSFWorkbook; import java.io.FileInputStream;
import java.io.File;
import java.io.FileOutputStream; public class EncodExcel2003 {
public static void main(String[] args)throws Exception{
FileInputStream fis=new FileInputStream(new File("resources/excel/" +
"stuInfo.xls")); //这里换成你本地的excel相对路径或绝对路径
HSSFWorkbook workbook=new HSSFWorkbook(fis); // writeProtectWorkbook第一个参数是打开Excel文件的密码
// writeProtectWorkbook第二个参数是现实文件密码是由谁设置的
// 第二个参数用中文可能会出现乱码的情况,我用utf8编码workspace
// 可能用gbk不会有乱码
workbook.writeProtectWorkbook("password","admin");
FileOutputStream fos=new FileOutputStream(new File("resources/excel/" +
"stuInfo.xls"));//这里换成你本地的excel相对路径或绝对路径
workbook.write(fos);
fis.close();
fos.close(); }
}
如果还解决不了问题,可以在我CSDN上面留言或者发消息
用poi-3.6-20091214.jar 实现java给excel资料加密的更多相关文章
- 使用JXL.jar实现JAVA对EXCEL的读写操作
简介: jxl.jar是通过java操作excel表格的工具类库 jxl操作excel包括对象Workbook(工作簿),Sheet(工作表) ,Cell(单元格). 一个excel就对应一个Work ...
- Java学习---Excel读写操作
1.1.1. 简介 Apache POI 使用Apache POI 完成Excel读写操作 Apache POI 是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API ...
- java写入excel文件poi
java写入excel文件 java写入excel文件poi,支持xlsx与xls,没有文件自动创建 package com.utils; import java.io.File; import ja ...
- JAVA实现Excel的读写--poi
上一篇为大家介绍了通过xls.jar的方式生成Excel的方法,本篇就为大家再介绍一下通过poi方式实现Excel文件的读写操作,内容很简单,代码注释很清晰. 1.生成Excel文件: import ...
- java实现excel的导入导出(poi详解)[转]
java实现excel的导入导出(poi详解) 博客分类: java技术 excel导出poijava 经过两天的研究,现在对excel导出有点心得了.我们使用的excel导出的jar包是poi这个 ...
- Java读写Excel之POI超入门
转自:http://rensanning.iteye.com/blog/1538591 Apache POI 是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给J ...
- Java读写Excel之POI超入门(转)
Apache POI 是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程式对Microsoft Office格式档案读和写的功能.Apache POI ...
- Java操作Excel(使用POI)
背景说明 以前写过使用 JXL 操作Excel的例子,但JXL对于Excel 2007版本以后的文件(即扩展名为 .xlsx)无法读取,也找不到可以支持的包.所以,有时不得不用 POI 来操作Exce ...
- DOS环境下含包并引用第三方jar的java程序的编译及运行
DOS环境下含包并引用第三方jar的java程序的编译及运行 1.程序目录机构 bin:class文件生成目录 lib:第三方jar包目录 src:源程序文件目录 2.程序代码: 3.程序编译 jav ...
随机推荐
- android studio Cannot resolve symbol '@drawable/XXX'等问题解决办法
方法1."Build " -> "Clean project" 方法 2."Tools" -> "Android&qu ...
- 【c++】动态绑定
C++的函数调用默认不使用动态绑定.要触发动态绑定,必须满足两个条件: 只有指定为虚函数的成员函数才能进行动态绑定 必须通过基类类型的引用或指针进行函数调用 因为每个派生类对象中都拥有基类部分,所以可 ...
- HTTP协议(二)header标头说明
HTTP协议(二):header标头说明 Header 解释 示例 Accept-Ranges 表明服务器是否支持指定范围请求及哪种类型的分段请求 Accept-Ranges: bytes Age 从 ...
- python 包管理工具Pipenv
Kenneth Reitz的最新工具Pipenv可以用于简化Python项目中依赖项的管理. 它汇集了Pip,Pipfile和Virtualenv的功能,是一个强大的命令行工具. 入门 首先使用pip ...
- 44个 Javascript 变态题解析
原题来自: http://javascript-puzzlers.herokuapp.com/ 读者可以先去做一下感受感受. 当初笔者的成绩是 21/44... 当初笔者做这套题的时候不仅怀疑智商, ...
- [android] 界面的划分
1.统一界面管理 1.1利用一个activity去管理应用的所有的界面 1.1.1 理解Activity,Window和View之间的关系 1.1.2 避免Activity过多导致的问题, 例如:彻底 ...
- JSON与null
org.json.JSONObject orgJSON = new org.json.JSONObject(); // The method put(String, Collection) is am ...
- git基本命令集合
以下内容不适合初学者 括号中表示需要自己填写 v1.0 git add git commit -m git commit -a -m git commit -amend git clone git l ...
- hibernate5的一些坑
SessionFactory创建的修改 如果你是刚刚从hibernate4升级到hibernate5,这时候你的项目肯定就要出错了,什么错呢? org.hibernate.MappingExcepti ...
- Hibernate 一对多,多对多,多对一检索策略
一.概述 我们先来谈谈检索数据时的两个问题: 1.不浪费内存 2.更好的检索效率 以上说的问题都是我们想要避免的,接下来就引出了我们要讨论的话题---------------hibernate检索 ...