Java 를 통해 PDF에서 첨부 파일 추출

Java 를 사용하여 프로그래밍 방식으로 PDF에서 첨부 파일을 추출하는 방법

Java 라이브러리를 사용하여 첨부 파일을 추출하는 방법

첨부 파일을 추출하기 위해 기능이 풍부하고 강력하며 사용하기 쉬운 Java 플랫폼용 변환 API인 Aspose.PDF for Java API를 사용합니다.Maven 에서 직접 최신 버전을 다운로드하고 pom.xml에 다음 구성을 추가하여 Maven 기반 프로젝트에 설치할 수 있습니다.

Repository

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java AP</name>
    <url>https://releases.aspose.com/java/repo/</url>
</repository>

Dependency

<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>version of aspose-pdf API</version>
</dependency>

PDF에서 첨부 파일 추출 Java


사용자 환경에서 코드를 테스트하려면 Aspose.PDF for Java 가 필요합니다.

1.임베디드 파일 컬렉션 가져오기. 1.포함된 파일 수를 가져옵니다. 1.컬렉션을 순회하며 모든 첨부 파일을 가져오세요. 1.매개 변수 개체에 매개 변수가 포함되어 있는지 확인하십시오. 1.첨부 파일을 가져와서 파일 또는 스트림에 씁니다.

PDF 문서에서 첨부 파일 추출


// Open document
Document pdfDocument = new Document(_dataDir+"input.pdf");
// Get particular embedded file
FileSpecification fileSpecification = pdfDocument.getEmbeddedFiles().get_Item(1);
// Get the file properties
System.out.printf("Name: - " + fileSpecification.getName());
System.out.printf("\nDescription: - " + fileSpecification.getDescription());
System.out.printf("\nMime Type: - " + fileSpecification.getMIMEType());
// Get attachment form PDF file
try {
    InputStream input = fileSpecification.getContents();
    File file = new File(fileSpecification.getName());
    // Create path for file from pdf
    file.getParentFile().mkdirs();
    // Create and extract file from pdf
    java.io.FileOutputStream output = 
        new java.io.FileOutputStream(
            fileSpecification.getName(), 
            true);
    byte[] buffer = new byte[4096];
    int n = 0;
    while (-1 != (n = input.read(buffer)))
        output.write(buffer, 0, n);
    // Close InputStream object
    input.close();
    output.close();
} 
catch (IOException e) {
    e.printStackTrace();
}
// Close Document object
pdfDocument.dispose();