㈠ java 緇橢xcel娣誨姞鏁板瓧絳懼悕 Excel VBA浣跨敤鏁板瓧絳懼悕
Java 緇橢xcel娣誨姞鏁板瓧絳懼悕 Excel VBA浣跨敤鏁板瓧絳懼悕銆侲xcel涓鍙娣誨姞鏁板瓧絳懼悕浠ヤ緵鏂囨。鎵鏈夎呯敵鏄庢枃妗g殑鎵鏈夋潈鎴栨湁鏁堟с備笅闈浠嬬粛濡備綍鍦↗ava紼嬪簭浠g爜涓瀹炵幇緇橢xcel宸ヤ綔綈挎坊鍔犵懼悕銆
宸ュ叿/鏉愭枡
Excel鐗堟湰錛2013
緙栬瘧鐜澧冿細IntelliJ IDEA2018
JDK鐗堟湰錛1.8.0
Excel搴撳伐鍏鳳細spire.xls.jar 4.3.4
鏁板瓧璇佷功鍙婂瘑鐮
鎿嶄綔鏂規硶
01
鍦↖DEA欏圭洰鏂囦歡澶硅礬寰勪笅錛屽瓨鍏ヤ竴涓狤xcel鏂囦歡錛岀増鏈涓2013鐗堟湰鐨剎lsx鏂囦歡;浠ュ強宸茬煡瀵嗙爜鐨刾fx鏍煎紡鐨勬暟瀛楄瘉涔︺傚傚浘錛
02
鍦╥dea欏圭洰寮曞叆excel搴撳伐鍏穝pire.xls.jar鐨勫寘錛屽傚浘錛
03
鍦ㄧ▼搴忎腑閿鍏ュ備笅浠g爜錛
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();
}
}
鎵ц岀▼搴忎唬鐮佸悗錛岀敓鎴愮殑緇撴灉鏂囨。涓涓嶅啀鏈夌懼悕銆
鐗瑰埆鎻愮ず
浠g爜涓鐨勮礬寰勪負IDEA欏圭洰鏂囦歡澶硅礬寰勶紝璺寰勪篃鍙鍙﹀栬嚜瀹氫箟銆
㈡ 為Word2003宏添加VBA項目的數字證書簽名
用戶在使用Word編輯文檔時可以藉助Word宏命令提高工作效率。在默認情況下,Word宏的安全性設置為「高」,當運行Word宏命令時會自動禁用宏。如果將Word宏安全性設置為「中」,則每次運行Word宏會彈出Word宏安全警告對話框。而如果把Word宏的安全性設置為「低」來取消安全警告,則會增加惡意代碼或病毒破壞的危險。為此,用戶可以為Word宏添加VBA項目的數字證書簽名,這樣不僅可以取消Word宏安全警告,並且不會降低Word文檔安全性。以Word2003為例,具體實現方法如下所述。
1.設置Word宏的安全級為「中」
首先需要將Word宏的安全性設置為「中」,以便觀察到更為清晰的設置結果。在為Word宏添加VBA項目的數字證書簽名後,再將安全性設置為高,操作步驟如下所述:
第1步,運行Word2003,打開Word2003窗口。在菜單欄中依次單擊「工具」→「宏」→「Visual Basic 編輯器」菜單命令,如圖2008061101所示。
圖2008061112 「選擇證書」對話框
第3步,在「Visual Basic 編輯器」窗口中依次單擊「文件」→「關閉並返回到 Microsoft Word」菜單命令,然後將Word宏安全性重新設置為「高」,並關閉該Word文件。
5.總是相信來自此發布者的宏
打開包含已簽名Word宏的Word文件,打開「安全警告」對話框。選中「總是相信來自此發布者的宏」復選框,並單擊「啟用宏」按鈕。然後再次關閉該Word文件,當再次打開該Word文件時,「安全警告」對話框將不再彈出,而Word宏命令已經自動運行了,如圖2008061113所示。
圖2008061113 選中「總是相信來自此發布者的宏」復選框
,辦公群:185219299