用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 ...
随机推荐
- CCF 出现次数最多的数 201312-1
出现次数最多的数 问题描述 试题编号: 201312-1 试题名称: 出现次数最多的数 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给定n个正整数,找出它们中出现次数最多的 ...
- Web后台模拟前端post(带NTLM验证)
using System.Data; using System.Net; using System.IO; using System.Net.Http; using System.Web; using ...
- [转]微信小程序开发踩坑记录
本文转自:http://www.cnblogs.com/NKnife/p/6283605.html 1.由于小程序wx.request()方法是异步的,在app.js执行ajax后,各分页加载app. ...
- PHP学习3——数组
主要内容: 简介 常用的方法 循环遍历数组 PHP预定义数组 数组的处理函数 数组 PHP由于是弱类型的语言,他的变量类型是可以自由变换的,他的数组很自由,长度是可以动态增加的. 他的索引默认为数字0 ...
- fabu dao fenleizhong
IsAggregated IsAggregatedIsAggregated IsAggregatedIsAggregated IsAggregatedIsAggregated IsAggregated ...
- Centos7 linux下 安装 Redis 5.0
网上找了很多文章,发现不全而且有些问题,安装很多次之后,总结一篇可以使用的,记录之. 环境:Centos7+Redis 5.0,如果环境不符合,本篇仅供参考. 1.准备工作 作者习惯软件安装包放在单独 ...
- POI 2000 ------Stripes
Stripes Time Limit:1000MS Memory Limit:30000KBTotal Submit:94 Accepted:43 Description Stripes is a t ...
- maven仓库中的LastUpdated文件删除脚本
cleanLastUpdated.bat(windows版本) @echo off rem create by NettQun rem 这里写你的仓库路径 set REPOSITORY_PATH=D: ...
- 怎么让div显示一行,其余的隐藏。
<style> div{ white-space: nowrap; text-overflow:ellipsis; text-overflow: ellipsis; overflow:hi ...
- 为什么分布式一定要有redis?(转)
为什么分布式一定要有redis? 程序员小灰 6天前 点击上方“程序员小灰”,选择“置顶公众号” 有趣有内涵的文章第一时间送达! 作者:孤独烟 来自:http://rjzheng.cnblogs.co ...