Saltar al contenido

Cómo comprobar si un PDF está protegido con contraseña o no

Si te encuentras con algo que te causa duda puedes dejarnos un comentario y te responderemos rápidamente.

Solución:

Use Apache PDFBox – Biblioteca PDF de Java desde aquí:
Código de muestra:

try

    document = PDDocument.load( "C:\abc.pdf");

    if(document.isEncrypted())
    
      //Then the pdf file is encrypeted.
    

En la versión antigua de PDFBox

try

    InputStream fis = new ByteArrayInputStream(pdfBytes);                       
    PDDocument doc = PDDocument.load(fis);

    if(doc.isEncrypted())
    
      //Then the pdf file is encrypeted.
    

En la versión más reciente de PDFBox (por ejemplo, 2.0.4)

    InputStream fis = new ByteArrayInputStream(pdfBytes);
    boolean encrypted = false;
    try 
        PDDocument doc = PDDocument.load(fis);
        if(doc.isEncrypted())
            encrypted=true;
        doc.close();
    
    catch(InvalidPasswordException e) 
        encrypted = true;
    
    return encrypted;

La forma en que lo hago es intentando leer el archivo PDF usando PdfReader sin pasar una contraseña, por supuesto. Si el archivo está protegido por contraseña, un BadPasswordException será arrojado. Esto está usando la biblioteca iText.

Puntuaciones y comentarios

Nos puedes añadir valor a nuestra información aportando tu veteranía en las reseñas.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *