Java 添加數(shù)字簽名到excel及檢測(cè),刪除簽名
Excel中可添加數(shù)字簽名以供文檔所有者申明文檔的所有權(quán)或有效性。文本以Java代碼示例介紹如何在Excel文檔中對(duì)數(shù)字簽名功能進(jìn)行相關(guān)操作,包括如何添加簽名到Excel、檢測(cè)Excel文檔是否已簽名,以及如何刪除Excel文檔中的簽名。
本次代碼測(cè)試環(huán)境
- Excel版本:2013
- 編譯環(huán)境:IntelliJ IDEA2018
- JDK版本:1.8.0
- Excel庫(kù)工具:spire.xls.jar 4.3.4
- Pfx數(shù)字證書(shū)(及密碼)
下面分別以三個(gè)代碼塊來(lái)展示如何實(shí)現(xiàn)。
1. 添加簽名
import com.spire.xls.*; import com.spire.xls.digital.CertificateAndPrivateKey; import java.util.Date; public class AddSignature { public static void main(String[] args) throws Exception { //加載Excel工作簿 Workbook wb = new Workbook(); wb.loadFromFile("test.xlsx"); //添加數(shù)字簽名 wb.addDigitalSignature(new CertificateAndPrivateKey("cer.pfx","123654yes!"), "The Author is Mia",new Date()); //保存文檔 wb.saveToFile("AddSignature.xlsx",ExcelVersion.Version2013); wb.dispose(); } }
簽名添加結(jié)果:
2.檢測(cè)是否簽名
import com.spire.xls.*; public class DetectSignature { public static void main(String[] args) { //加載Excel工作簿 Workbook wb = new Workbook(); wb.loadFromFile("AddSignature.xlsx"); //判斷文檔是否簽名 boolean signature = wb.isDigitallySigned(); if(signature==true) { System.out.println("文檔已簽名!"); } else { System.out.println("未簽名文檔!"); } } }
檢測(cè)結(jié)果:
3.刪除簽名
import com.spire.xls.*; public class RemoveSignature { public static void main(String[] args) { //加載Excel工作簿 Workbook wb = new Workbook(); wb.loadFromFile("AddSignature.xlsx"); //刪除簽名 wb.removeAllDigitalSignatures(); //保存文檔 wb.saveToFile("RemoveSignature.xlsx",ExcelVersion.Version2013); wb.dispose(); } }
執(zhí)行程序代碼后,生成的結(jié)果文檔中不再有簽名。
以上就是Java 添加數(shù)字簽名到excel及檢測(cè),刪除簽名的詳細(xì)內(nèi)容,更多關(guān)于Java 添加數(shù)字簽名到excel的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- Java實(shí)戰(zhàn)之基于I/O流設(shè)計(jì)的圖書(shū)管理系統(tǒng)
- 解決Java Redis刪除HashMap中的key踩到的坑
- IDEA插件之快速刪除Java代碼中的注釋
- 詳解Java刪除Map中元素java.util.ConcurrentModificationException”異常解決
- java迭代器中刪除元素的實(shí)例操作詳解
- Java如何通過(guò)File類方法刪除指定文件夾中的全部文件
- Java File類的簡(jiǎn)單使用教程(創(chuàng)建、刪除、遍歷與判斷是否存在等)
- Java中List遍歷刪除元素remove()的方法
- Java使用RedisTemplate模糊刪除key操作
- Java基礎(chǔ)之刪除文本文件中特定行的內(nèi)容
相關(guān)文章
Java Bean與Map之間相互轉(zhuǎn)化的實(shí)現(xiàn)方法
這篇文章主要介紹了Java Bean與Map之間相互轉(zhuǎn)化的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01Spring中ClassPathXmlApplicationContext類的使用詳解
這篇文章主要介紹了Spring中ClassPathXmlApplicationContext類的使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-01-01java使用FFmpeg合成視頻和音頻并獲取視頻中的音頻等操作(實(shí)例代碼詳解)
這篇文章主要介紹了java使用FFmpeg合成視頻和音頻并獲取視頻中的音頻等操作,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-02-02基于Java反射的map自動(dòng)裝配JavaBean工具類設(shè)計(jì)示例代碼
這篇文章主要給大家介紹了關(guān)于基于Java反射的map自動(dòng)裝配JavaBean工具類設(shè)計(jì)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用java具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧2018-10-10mybatis實(shí)體類字段大小寫(xiě)及字段獲取不到值問(wèn)題
這篇文章主要介紹了mybatis實(shí)體類字段大小寫(xiě)及字段獲取不到值問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12