java代码实现对excel加密、解密(设置或去除打开密码)

使用jxcell组件来完成对excel加密、解密的功能。

  jxcell.jar【点击下载】(此jar没有使用限制,你懂得)

具体代码如下:

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)

时间: 2024-10-06 17:44:02

java代码实现对excel加密、解密(设置或去除打开密码)的相关文章

C# 加密(Encrypt) 解密(Decrypt) 操作类 java与 C# 可以相互加密解密

public sealed class EncryptUtils { #region Base64加密解密 /// <summary> /// Base64加密 /// </summary> /// <param name="input">需要加密的字符串</param> /// <returns></returns> public static string Base64Encrypt(string input)

java/php DES/CBC/PKCS5Padding加密解密算法实现过程

先看java代码 Java代码   public static String encrypt(String message, String key) throws Exception { Cipher cipher = Cipher.getInstance("DES/CBC/PKCS5Padding"); DESKeySpec desKeySpec = new DESKeySpec(key.getBytes("UTF-8")); SecretKeyFactory k

python实现对excel表的读写操作(一)

Part 1. 模块介绍: 使用python实现对excel表的读写操作有两个模块,分别为: 1. 对excel表读取模块 xlrd 0.9.3  :下载地址: https://pypi.python.org/pypi/xlrd 英文释意:The package is for reading data and formatting information from Excel files. 2. 对excel表写入模块 xlwt 0.7.5 : 下载地址:https://pypi.python.

【转】 java DES ECB模式对称加密解密

最近需要又要使用DES加密数据,要求DES加密出来的数据为对称加密,经过研究,发现了一些问题: 1.DES对称ECB模式加密的数据,长度必须为8的倍数 2.加密的数据,加密后先转码(因为加密后的数据我是转码了),否则解密是乱码格式 一下是源代码: 这个是加密的工具类: package com.palmfu.sql; import java.security.Key; import javax.crypto.Cipher; import javax.crypto.spec.SecretKeySpe

Windows下Java程序实现对Mysql数据库的插入,删除,修改和查询

运行环境:Windows7,Eclipse,MySql,JDK1.7,mysql-connector-java-5.1.17-bin.jar 1 //import java.io.*; 2 import java.util.*; 3 import java.sql.*; 4 5 /** 6 * 7 * @date 2014-05-20 8 * @author asif 9 * @作用 java实现对mysql数据库的增减删查 10 * @bug 插入,删除,更新的时候异常停止 11 * 12 *

通过java代码实现调用excel当中的宏的操作。

最近做的项目是自动化生成基金的交易合同的操作.然后就想着通过java代码去操作Excel当中的宏按钮,然后生成word版本的合同的操作. 具体的java代码如下: import org.junit.Assert; import org.junit.Test; public class ExcelToolsServiceTest { private ExcelToolsService service; @Test public void testMacro() { try { String pat

在Asp.Net MVC中使用NPOI插件实现对Excel的操作(导入,导出,合并单元格,设置样式,输入公式)

前言 NPOI 是 POI 项目的.NET版本,它不使用 Office COM 组件,不需要安装 Microsoft Office,目前支持 Office 2003 和 2007 版本. 1.整个Excel表格叫做工作表:WorkBook(工作薄),包含的叫页(工作表):Sheet:行:Row:单元格Cell. 2.NPOI是POI的C#版本,NPOI的行和列的index都是从0开始 3.POI读取Excel有两种格式一个是HSSF,另一个是XSSF. HSSF和XSSF的区别如下: HSSF

java对Base64图片的加密解密

Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息. Base64是个字符串 pom.xml配置 <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.10</version> </dependency> 加密解密代码 /** * 解密 * *

Java &amp; PHP &amp; Javascript 通用 RSA 加密 解密 (长字符串)

系统与系统的数据交互中,有些敏感数据是不能直接明文传输的,所以在发送数据之前要进行加密,在接收到数据时进行解密处理:然而由于系统与系统之间的开发语言不同. 本次需求是生成二维码是通过java生成,由php来解密.基于这类需求所以选择了RSA进行加解密. 生成RSA公私钥分成三步生成RSA公私钥,第1.2步可以满足php的使用,由于java的私钥要转化为PKCS8格式才能使用,所以执行第3步来实现. 还有一种加密方式参考: DES ECB 模式 JAVA PHP C# 实现 加密 解密 兼容 .