古詩詞大全網 - 個性簽名 - Java 給Excel添加數字簽名 Excel VBA使用數字簽名

Java 給Excel添加數字簽名 Excel VBA使用數字簽名

Java 給Excel添加數字簽名 Excel VBA使用數字簽名。Excel中可添加數字簽名以供文檔所有者申明文檔的所有權或有效性。下面介紹如何在Java程序代碼中實現給Excel工作簿添加簽名。

工具/材料

Excel版本:2013

編譯環境:IntelliJ IDEA2018

JDK版本:1.8.0

Excel庫工具:spire.xls.jar 4.3.4

數字證書及密碼

操作方法

01

在IDEA項目文件夾路徑下,存入壹個Excel文件,版本為2013版本的xlsx文件;以及已知密碼的pfx格式的數字證書。如圖:

02

在idea項目引入excel庫工具spire.xls.jar的包,如圖:

03

在程序中鍵入如下代碼:

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");

//添加數字簽名

wb.addDigitalSignature(new CertificateAndPrivateKey("cer.pfx","123654yes!"), "The Author is Mia",new Date());

//保存文檔

wb.saveToFile("AddSignature.xlsx",ExcelVersion.Version2013);

wb.dispose();

}

}

04

執行程序,生成文檔。在結果文檔中查看簽名添加效果:

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");

//添加數字簽名

wb.addDigitalSignature(new CertificateAndPrivateKey("cer.pfx","123654yes!"), "The Author is Mia",new Date());

//保存文檔

wb.saveToFile("AddSignature.xlsx",ExcelVersion.Version2013);

wb.dispose();

}

}

2.檢測是否簽名

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("未簽名文檔!");

}

}

}

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();

}

}

執行程序代碼後,生成的結果文檔中不再有簽名。

特別提示

代碼中的路徑為IDEA項目文件夾路徑,路徑也可另外自定義。