Vraag : Hoe te om.properties- dossier te creëren om dit op te lossen

ik heb geen idee hoe te om tot het eigenschappen dossier te leiden om dit bepaalde voorbeeld (Itext tweede uitgavenvoorbeeld) in werking te stellen. />please


thanks
" codeBody "
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
import java.io.FileInputStream;
de invoer java.io.FileOutputStream;
de invoer java.io.IOException;
de invoer java.security.GeneralSecurityException;
de invoer java.security.KeyStore;
de invoer java.security.PrivateKey;
de invoer java.security. Veiligheid;
de invoer java.security.cer t.Certificate;
de invoer java.security.cer t.CertificateException;
de invoer java.security.cer t.CertificateFactory;
de invoer java.security.cer t.X509Certificate;
de invoer java.util. Eigenschappen;
 
de invoer org.bouncycastle.jce.provider.BouncyCastleProvider;
 
de invoer com.itextpdf.text. Document;
de invoer com.itextpdf.text.DocumentException;
de invoer com.itextpdf.text. Paragraaf;
de invoer com.itextpdf.text.pdf.PdfReader;
de invoer com.itextpdf.text.pdf.PdfStamper;
de invoer com.itextpdf.text.pdf.PdfWriter;
 
openbare klasse EncryptWithCertificate {
 
    /** Het voortvloeien PDF */
    openbaar statisch Koord RESULT1 = „c: /results/part1/chapter01/certificate_encryption.pdf“;
    /** Het voortvloeien PDF */
    openbaar statisch Koord RESULT2 = „c: /results/part1/chapter01/certificate_decrypted.pdf“;
    /** Het voortvloeien PDF */
    openbaar statisch Koord RESULT3 = „c: /results/part1/chapter01/certificate_encrypted.pdf“;
 
    /**
     * Een eigenschappen dossier dat PRIVÉ is.
     * U zou uw eigen eigenschappen moeten maken deze lijn indienen en aanpassen.
     */
    de openbare statische WEG van het Koord = „c: /home/blowagie/key.properties“;
    /** Sommige eigenschappen toen het ondertekenen gebruikten. */
    de openbare statische eigenschappen van Eigenschappen = nieuwe Eigenschappen ();
 
    /**
     * Cre�ërt een PDF die gebruikend twee verschillende openbare certificaten wordt gecodeerd.
     * @param filename de weg aan het resulterende Pdf- dossier
     * @throws IOException
     * @throws DocumentException
     * @throws GeneralSecurityException
     */
    openbare nietige createPdf (filename van het Koord)
        werpt IOException, DocumentException, GeneralSecurityException {
        // stap 1
        Het document van het document = nieuw Document ();
        // stap 2
        De schrijver van PdfWriter = PdfWriter.getInstance (document, nieuwe FileOutputStream (RESULT1));
        Certificaat cert1 = getPublicCertificate („c: /resources/encryption/foobar.cer“);
        Certificaat cert2 = getPublicCertificate (properties.getProperty („OPENBAAR“));
        writer.setEncryption (nieuw Certificaat [] {cert1, cert2},
            nieuw int. [] {PdfWriter.ALLOW_PRINTING, PdfWriter.ALLOW_COPY}, PdfWriter.ENCRYPTION_AES_128);
        // stap 3
        document.open ();
        // stap 4
        document.add (nieuwe Paragraaf („Hello Wereld! “));
        // stap 5
        document.close ();
    }
 
    /**
     * Krijgt een openbaar certificaat van een certificaatdossier.
     * @param weg de weg aan het certificaat
     * @return een voorwerp van het Certificaat
     * @throws IOException
     * @throws CertificateException
     */
    openbaar Certificaat getPublicCertificate (de weg van het Koord)
        werpt IOException, CertificateException {
        FileInputStream is = nieuwe FileInputStream (weg);
        CertificateFactory cf. = CertificateFactory.getInstance („X.509“);
        X509Certificate cert = (X509Certificate) cf.generateCertificate (is);
        terugkeer cert;
    }
 
    /**
     * Krijgt een privé sleutel van een KeyStore.
     * @return een voorwerp PrivateKey
     * @throws GeneralSecurityException
     * @throws IOException
     */
    openbare getPrivateKey PrivateKey () werpt GeneralSecurityException, IOException {
        De weg van het koord = „c: /resources/encryption/.keystore“;
        KeyStore ks = KeyStore.getInstance (KeyStore.getDefaultType ());
        ks.load (nieuwe FileInputStream (weg), „f00b4r“ .toCharArray ());
        PrivateKey pk = (PrivateKey) ks.getKey („foobar“, „f1lmf3st“ .toCharArray ());
        terugkeer pk;
    }
 
    /**
     * Decrypteert een PDF die gebruikend een certificaat werd gecodeerd
     * @param src Gecodeerde PDF
     * @param dest Gedecrypteerde PDF
     * @throws IOException
     * @throws DocumentException
     * @throws GeneralSecurityException
     */
    openbare nietige decryptPdf (Koord src, Koord dest)
        werpt IOException, DocumentException, GeneralSecurityException {
        De lezer van PdfReader = nieuwe PdfReader (src,
            getPublicCertificate („c: /resources/encryption/foobar.cer“), getPrivateKey (), „BC“);
        De stamper van PdfStamper = nieuwe PdfStamper (lezer, nieuwe FileOutputStream (dest));
        stamper.close ();
    }
 
    /**
     * Codeert een PDF gebruikend een openbaar certificaat.
     * @param src het oorspronkelijke Pdf- document
     * @param dest het gecodeerde Pdf- document
     * @throws IOException
     * @throws DocumentException
     * @throws CertificateException
     */
    openbare nietige encryptPdf (Koord src, Koord dest)
        werpt IOException, DocumentException, CertificateException {
        De lezer van PdfReader = nieuwe PdfReader (src);
        De stamper van PdfStamper = nieuwe PdfStamper (lezer, nieuwe FileOutputStream (dest));
        Certificaat cert = getPublicCertificate („c: /resources/encryption/foobar.cer“);
        stamper.setEncryption (nieuw Certificaat [] {cert},
            nieuw int. [] {PdfWriter.ALLOW_PRINTING}, PdfWriter.ENCRYPTION_AES_128);
        stamper.close ();
    }
 
    /**
     * Hoofdmethode.
     *
     * @param args geen nodig argumenten
     * @throws DocumentException 
     * @throws IOException
     * @throws GeneralSecurityException 
     */
    openbare statische nietige leiding (Koord [] args)
        werpt IOException, DocumentException, GeneralSecurityException {
        Security.addProvider (nieuwe BouncyCastleProvider ());
        properties.load (nieuwe FileInputStream (WEG));
        EncryptWithCertificate hello = nieuwe EncryptWithCertificate ();
        hello.createPdf (RESULT1);
        hello.decryptPdf (RESULT1, RESULT2);
        hello.encryptPdf (RESULT2, RESULT3);
    }
}

Antwoord : Hoe te om.properties- dossier te creëren om dit op te lossen

Is de tweede muis optisch, ook?  Als zo, moet u de muis op een vlakke oppervlakte gebruiken die een textuur of een patroon dat verandert zodat de optica kan bepalen heeft waar de muis zich heeft bewogen.  Probeer een muisstootkussen of zelfs een knipselraad.
Andere oplossingen  
 
programming4us programming4us