개요

아카이브를 최신 상태로 유지하려면 필요할 때 항목을 삭제하는 것이 좋습니다. Java를 통한 Aspose.Zip을 사용하면 아카이브 내의 특정 파일을 선택적으로 제거하거나 업데이트할 수 있습니다.

Zip에서 파일을 제거하는 방법

ZIP 아카이브 항목은 deleteEntry 메소드 쌍을 사용하여 삭제할 수 있습니다. 항목 삭제는 다시 압축하지 않고 발생하므로 다른 항목은 압축 해제 및 압축되지 않습니다.
Java를 사용하여 "archive.zip"에서 단일 파일을 삭제해야 하는 경우 다음 코드는 이를 달성하는 방법을 보여줍니다. 다음 작업을 수행합니다
1. 편집을 위해 아카이브 열기: 코드는 코드 블록이 실행된 후 아카이브를 자동으로 닫는 try 구문을 활용합니다.
2. 항목 반복: 후속 행에서는 아카이브 항목을 반복하여 마지막 항목을 제외한 모든 항목을 삭제하는 루프를 구현합니다.
3. 수정된 아카이브 저장: 루프가 완료된 후 수정된 아카이브는 "last_entry.zip"이라는 새 파일에 저장됩니다.
수정된 아카이브를 동일한 경로로 저장할 수 있지만 이 경우 임시 파일에 복사해야 합니다. . 다중 볼륨 ZIP 아카이브에서는 항목을 삭제할 수 없습니다.

    try (Archive archive = new Archive("archive.zip")) {
        while (archive.getEntries().size() > 1)
            archive.deleteEntry(archive.getEntries().get(0));
        archive.save("last_entry.zip");
    }

TAR 아카이브에서 파일 제거

유사한 deleteEntry 메소드를 사용하여 tar 아카이브 항목을 삭제할 수 있습니다.
이것은 "two_files.tar"라는 TAR 아카이브 작업을 위한 코드입니다. 코드 블록 실행이 완료된 후 자동으로 아카이브를 닫는 try-with-resources 구문을 사용하여 편집할 아카이브를 엽니다. 그런 다음 코드는 아카이브에서 인덱스 0의 레코드, 즉 파일 또는 폴더 목록의 첫 번째 파일을 삭제합니다. 그런 다음 코드는 수정된 아카이브를 "single_file.tar"로 저장합니다. 따라서 이 코드는 원래 "two_files.tar" 아카이브에 있던 파일 중 하나만 포함하는 새로운 TAR 아카이브를 생성합니다.
압축된 tar 아카이브에서 항목 삭제예: *.tar.gz는 먼저 일반 *.tar 아카이브의 압축을 풀어야 합니다.

    try (TarArchive archive = new TarArchive("two_files.tar")) {
        archive.deleteEntry(0);
        archive.save("single_file.tar");
    }
  

Support and Learning Resources

  
  

Aspose.Zip offers individual archive processing APIs for other popular development environments, listed below: