java代码实现对excel加密、解密(设置或去除打开密码)
本demo使用jxcell组件来完成对excel加密、解密的功能。
jxcell.jar已破解,下载方式为关注下面二维码,回复jxcell或即可。

具体代码如下:
import java.io.IOException; import com.jxcell.CellException;
import com.jxcell.View; /**
* excel加密、解密 代码
*
* @author lifq
* @date 2015-3-13 下午02:13:24
*/
public class EncryptDecryptUtil { /**
* 读取excel,并进行加密
*
* @param url
* excel文件路径 例:D:\\word.xls
* @param pwd
* 加密密码
*/
public static void encrypt(String url, String pwd) {
View m_view = new View();
try {
// read excel
m_view.read(url);
// set the workbook open password
m_view.write(url, pwd);
} catch (CellException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
} /**
* excel 解密
*
* @return void
* @author lifq
* @date 2015-3-13 下午02:15:49
*/
public static void decrypt(String url, String pwd) {
View m_view = new View();
try {
// read the encrypted excel file
m_view.read(url, pwd); // write without password protected
m_view.write(url);
} catch (Exception e) {
System.out.println(e.getMessage());
}
} public static void main(String args[]) {
// 下面1与2 两个方法请分开执行,可以看到效果
//
//1. 把g:\\test.xls 添加打开密码123
EncryptDecryptUtil.encrypt("g:\\test.xls", "123");
//2. 把g:\\test.xls 密码123 去除
EncryptDecryptUtil.decrypt("g:\\test.xls", "123"); }
}
加密后效果图:(打开时提示输入密码123)

java代码实现对excel加密、解密(设置或去除打开密码)的更多相关文章
- php利用32进制实现对id加密解密
前言 最近在项目中遇到一个问题,当前用户分享一个邀请码给好友,好友根据邀请码注册成为新用户之后,则成为当前用户的下级,特定条件下,可以得到下级用户的一系列返利.这里要实现的就是根据当前用户的id,生成 ...
- Java代码实现对Azkaban的Flow进行设置定时
代码如下: public class CurlToAzkaban{ public static void scheduleExecute(String flow, String cronExpress ...
- C# 加密(Encrypt) 解密(Decrypt) 操作类 java与 C# 可以相互加密解密
public sealed class EncryptUtils { #region Base64加密解密 /// <summary> /// Base64加密 /// </summ ...
- JAVA-----基于POI实现对Excel导入
在日常项目开发中, 数据录入和导出是十分普遍的需求,因此,导入导出也成为了开发中一个经典的功能.数据导出的格式一般是excel或者pdf,而批量导入的信息一般是借助excel来减轻工作量,提高效率. ...
- 通过vb.net 和NPOI实现对excel的读操作
通过vb.net 和NPOI实现对excel的读操作,很久很久前用过vb,这次朋友的代码是vb.net写的需要一个excel的操作, 就顾着着实现功能了,大家凑合着看吧 Option Explicit ...
- C#代码实现对HTTP POST参数进行排序
private static string GetSortedParas(Dictionary<string, string> dic) { dic = dic.OrderBy(key = ...
- java DES转C#DES加密解密
一个程序用到java的cn.core.jar加密的,需要在.NET 中解密,发现JAVA的des算法与C#的有点区别. 自己不太懂加密解密算法,所以找了个省事的方法,用IKVM.NET,用这个将cn. ...
- DES加密 java与.net可以相互加密解密两种方法
DES加密 java与.net可以相互加密解密两种方法 https://www.cnblogs.com/DrWang/archive/2011/03/30/2000124.html sun.misc. ...
- 在Asp.Net MVC中使用NPOI插件实现对Excel的操作(导入,导出,合并单元格,设置样式,输入公式)
前言 NPOI 是 POI 项目的.NET版本,它不使用 Office COM 组件,不需要安装 Microsoft Office,目前支持 Office 2003 和 2007 版本. 1.整个Ex ...
随机推荐
- 【清橙A1094】【牛顿迭代法】牛顿迭代法求方程的根
问题描述 给定三次函数f(x)=ax3+bx2+cx+d的4个系数a,b,c,d,以及一个数z,请用牛顿迭代法求出函数f(x)=0在z附近的根,并给出迭代所需要次数. 牛顿迭代法的原理如下(参考下图) ...
- ACM HDU 2044 一只小蜜蜂
Problem Description 有一只经过训练的蜜蜂只能爬向右侧相邻的蜂房,不能反向爬行.请编程计算蜜蜂从蜂房a爬到蜂房b的可能路线数. 其中,蜂房的结构如下所示. Input 输入数据的第一 ...
- linux上配置subversion服务器端安装配置并使用svn,windows本地检出,设置同步更新服务器的钩子
参考http://my.oschina.net/junn/blog/164041 http://songxj.blog.51cto.com/620981/396113 http://5iwww.blo ...
- Object之魔术函数__call() 处理错误调用
在提到__call之前,先来看一个实例的测试结果,以便更好地去了解__call方法的作用.上代码: <?php class Person{ function say(){ echo " ...
- MyEclipse使用经验总结
0.快捷键 ================================================================================ 编辑: Ctrl+Shif ...
- python生成随机二进制文件
import random def genFile(filename,block=1,size=1): f=open(filename,"wb") content="&q ...
- 基于page的简单页面推送技术
我们可以先看下简单效果,打开2个页面可以看到推送效果 服务端我们只需要下面一个方法 using System; using System.Collections.Generic; using Syst ...
- C# 数据结构 线性表(顺序表 链表 IList 数组)
线性表 线性表是最简单.最基本.最常用的数据结构.数据元素 1 对 1的关系,这种关系是位置关系. 特点 (1)第一个元素和最后一个元素前后是没有数据元素,线性表中剩下的元素是近邻的,前后都有元素. ...
- 转载:如何避免代码中的if嵌套
http://top.jobbole.com/4960/ http://stackoverflow.com/questions/24430504/how-to-avoid-if-chains 在Sta ...
- wget命令解析
今天一学信息安全的同学让我编写一个软件,功能大致如下:输入网站首页,自动下载该网站所有网页并保存?拿到后感觉属于搜索引擎相关的,说实话我就感觉会用到递归,不过我不会写,百度也没找到资料, ...