この鮮明な記事には、Java を使用して Excel ドキュメントにデジタル署名する方法に関するすべての情報が含まれています。このタスクをプログラムで実行するために必要な論理的な手順と、Java を使用して Excel に電子署名を挿入するための実行可能なサンプル コードが含まれています。また、このプロセスをカスタマイズして、PFX を使用してデジタル署名を作成し、この署名を Excel ファイルに配置してから XLSX ファイルまたはその他のサポートされている形式で保存する方法についても学習します。
Java を使用して Excel でデジタル署名を作成する手順
- リポジトリから Aspose.Cells を使用して Excel ファイルに署名するように環境を構成します
- キーストアをインスタンス化し、証明書ファイル名とパスワードを使用して証明書をロードします
- 上記のキーストアと秘密鍵のパスワードを使用して digital signature を作成します
- デジタル署名のコメント、署名日時を入力してください
- デジタル署名コレクションを作成し、新しく作成したデジタル署名をそれに追加します
- workbook を読み込み、デジタル署名コレクションを追加します
- デジタル署名されたブックを保存する
これらの手順は、Java を使用して Excel で電子署名を作成する方法 の手順を説明しています。最初に PFX 証明書と秘密鍵パスワードを使用してキーストアが作成され、次にデジタル署名コレクションが作成され、キーストアを使用して作成された新しいデジタル署名がこのコレクションに追加される、段階的なプロセスが示されています。最後の手順では、ターゲット ワークブックが読み込まれ、デジタル署名コレクションが追加されます。
Java を使用して Excel にデジタル署名を配置するコード
import java.io.FileInputStream; | |
import java.io.InputStream; | |
import com.aspose.cells.DigitalSignature; | |
import com.aspose.cells.DigitalSignatureCollection; | |
import com.aspose.cells.Workbook; | |
public class AsposeTest { | |
public static void main(String[] args) throws Exception {//Main function to add a digital signature to a spreadsheet in java | |
// Instantiate a license | |
com.aspose.cells.License slidesLicense = new com.aspose.cells.License(); | |
slidesLicense.setLicense("Aspose.Total.lic"); | |
// Using the cryptography PKCS12, create a Keystore | |
java.security.KeyStore keyStore = java.security.KeyStore.getInstance("PKCS12"); | |
// Load certificate into the InputStream | |
InputStream inStreamCert = new FileInputStream("TestCert1.pfx"); | |
// Load the certificate into the Keystore by providing the certificate file and its password | |
keyStore.load(inStreamCert, "testcert1".toCharArray()); | |
// Create the digital signature | |
DigitalSignature digtSign = new DigitalSignature(keyStore, "testcert1", "New digital signature is added to a workbook",com.aspose.cells.DateTime.getNow()); | |
// Instantiate a collection of digital signatures | |
DigitalSignatureCollection digtSignColl = new DigitalSignatureCollection(); | |
// Add the digital signature to the collection | |
digtSignColl.add(digtSign); | |
// Load the spreadsheet | |
Workbook wbToBeSigned = new Workbook("sampleSpreadsheet.xlsx"); | |
// Add the collection of digital signatures to the workbook | |
wbToBeSigned.addDigitalSignature(digtSignColl); | |
// Save the workbook with an electronic signature | |
wbToBeSigned.save("outputDigitallySignedByCells.xlsx"); | |
System.out.println("Done"); | |
} | |
} |
Java を使用して Excel にデジタル署名する このコードでは、暗号化 PKCS12 を使用してキーストアが作成され、証明書ファイルがそこに読み込まれます。 DigitalSignature は、キーストア、秘密鍵パスワード、コメント、およびユーザー提供の署名時刻を提供することによって作成されますが、署名画像、プロバイダー ID、および XAdESType を追加することもできます。出力ワークブックは、XLSX、XLS、XLSM、ODS、XLSB など、サポートされている任意の形式で保存できます。
このチュートリアルでは、Excel ファイルにデジタル署名するプロセスを共有しましたが、Excel を画像に変換するプロセスを学びたい場合は、JavaでExcelシートを画像に変換する方法 の記事を参照してください。