使用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)