用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 ...
随机推荐
- Git命令学习笔记
一.本地代码增,删,改,查,提交,找回git checkout . //抛弃工作区所有修改git checkout -- <file> //抛弃工作区& ...
- ios audio不能自动播放
今天做了一个简单的落地页项目,就是类似于手机微信上经常看到的滑动效果.因为公司要求需要自己开发,所以我就用swiper+swiper.animate开发,开发速度很快,只不过最后音乐哪里出现了一点小b ...
- easyui内嵌iframe问题解决
项目中使用easyui的tab页,每个tab页均内嵌iframe,现在要在tab页中控制新增一个同级别的tab页,记录如下: 首先是main.html主页面: <div class=" ...
- DataTables获取指定元素的行数据
法1: 用jquey获取,var row = $('.edit').parent().parent(); 缺点:只能获取dom上的东西,不能获取没有渲染的数据 法2: 首先绑定行号到元素上 $('#e ...
- log4j的简单使用
引入jar包org.apache.log4j.Logger,项目src目录下建立一个log4j.properties配置文件 log4j.rootLogger=INFO,A1,R log4j.appe ...
- SZU 7
A - Megacity sqrtf是个坑 #include <iostream> #include <string> #include <cstring> #in ...
- 2048小游戏4X4C语言
*/ #include<stdio.h> #include<stdlib.h> #include<conio.h> #include<time.h> v ...
- 基于Netty的NIO优化实践
1. 浅谈React模型 2. Netty TCP 3. Netty UTP
- SQL COUNT DISTINCT
Create table trade ( sell_id int, --卖家 buy_id int, -- 卖家 time date --交易时间 ) sell_id, buy_id, time s ...
- 准备Activiti开发环境
1.添加jar包 在activiti-5.13 -> wars 目录下 解压 activiti-rest.war ,导入WEB-INF\lib下所有包添加到classpath中. 由于使用的是O ...