[java] 자바에서 압축 해제 후 압축 메타데이터 확인하기
압축 파일에서 데이터를 추출하여 메타데이터를 확인하는 것은 매우 흔한 작업입니다. Java에서는 이를 쉽게 수행할 수 있습니다. 이 블로그 포스트에서는 자바를 사용하여 압축 해제 후 압축 메타데이터를 확인하는 방법을 살펴보겠습니다.
1. 압축 파일 해제하기
Java에서 압축 파일을 해제하기 위해서는 java.util.zip
패키지의 ZipInputStream
클래스를 사용할 수 있습니다. 아래는 간단한 압축 파일 해제 예제 코드입니다.
import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
public class ZipExtractor {
public static void extract(String zipFilePath, String destDir) {
byte[] buffer = new byte[1024];
try (ZipInputStream zis = new ZipInputStream(new FileInputStream(zipFilePath))) {
ZipEntry zipEntry = zis.getNextEntry();
while (zipEntry != null) {
String fileName = zipEntry.getName();
File newFile = new File(destDir + File.separator + fileName);
try (FileOutputStream fos = new FileOutputStream(newFile)) {
int len;
while ((len = zis.read(buffer)) > 0) {
fos.write(buffer, 0, len);
}
}
zipEntry = zis.getNextEntry();
}
zis.closeEntry();
} catch (IOException e) {
e.printStackTrace();
}
}
}
위 코드는 extract
메서드를 사용하여 압축 파일을 해제하는 기능을 제공합니다.
2. 압축 메타데이터 확인하기
압축 해제 후, 각 파일의 메타데이터를 확인하려면 ZipFile
클래스를 사용할 수 있습니다. 아래는 압축 파일의 메타데이터를 확인하는 간단한 예제 코드입니다.
import java.io.IOException;
import java.util.Enumeration;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
public class ZipMetadataReader {
public static void readMetadata(String zipFilePath) {
try (ZipFile zipFile = new ZipFile(zipFilePath)) {
Enumeration<? extends ZipEntry> entries = zipFile.entries();
while (entries.hasMoreElements()) {
ZipEntry entry = entries.nextElement();
System.out.println("File name: " + entry.getName());
System.out.println("Compressed size: " + entry.getCompressedSize());
System.out.println("Uncompressed size: " + entry.getSize());
System.out.println("Last modified time: " + entry.getLastModifiedTime());
// 추가적인 메타데이터 확인
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
위 코드는 readMetadata
메서드를 사용하여 압축 파일 내의 각 파일의 메타데이터를 확인하는 기능을 제공합니다.
결론
자바를 사용하여 압축 파일을 해제하고 압축 메타데이터를 확인하는 방법을 살펴보았습니다. 이러한 기능을 사용하여 압축 파일에서 데이터를 추출하고 관련 메타데이터를 확인하는 프로세스를 자동화할 수 있으며, 다양한 응용 프로그램에서 유용하게 활용될 수 있습니다.