[java] Apache POI를 이용한 Word 문서 백업
일반적으로 문서 작성 중에 Word 파일을 백업하는 것은 매우 중요합니다. 예기치 않은 데이터 손실로 인해 문서를 다시 작성해야 할 수도 있기 때문입니다. 이를 방지하기 위해 Apache POI 라이브러리를 사용하여 Word 문서를 백업하는 방법을 알아보겠습니다.
Apache POI란?
Apache POI는 자바 기반 API로서, Microsoft Office 파일 형식과 상호 작용하기 위한 라이브러리입니다. 이 라이브러리는 Microsoft Word, Excel, PowerPoint 등의 파일을 생성, 수정 및 읽을 수 있는 기능을 제공합니다.
의존성 추가
먼저, Apache POI를 사용하기 위해 프로젝트에 해당 라이브러리를 추가해야 합니다. Maven을 사용한다면, pom.xml 파일에 다음 의존성을 추가합니다:
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.1.2</version>
</dependency>
Gradle을 사용한다면, build.gradle 파일에 다음 의존성을 추가합니다:
implementation 'org.apache.poi:poi:4.1.2'
코드 작성
다음으로, Word 문서를 백업하는 코드를 작성해 보겠습니다. 다음 코드는 입력으로 받은 Word 파일을 백업하기 위해 “.bak” 확장자를 추가하여 새로운 파일로 저장하는 예제입니다.
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class WordDocumentBackup {
public static void main(String[] args) {
String filePath = "path/to/original/document.docx";
backupWordDocument(filePath);
}
public static void backupWordDocument(String filePath) {
try {
File file = new File(filePath);
FileInputStream fis = new FileInputStream(file);
XWPFDocument document = new XWPFDocument(fis);
String backupFilePath = filePath + ".bak";
FileOutputStream fos = new FileOutputStream(backupFilePath);
document.write(fos);
fos.close();
fis.close();
document.close();
System.out.println("Word document backed up successfully to: " + backupFilePath);
} catch (IOException e) {
System.out.println("Failed to backup Word document.");
e.printStackTrace();
}
}
}
위의 코드에서 filePath
변수에는 백업할 Word 문서의 경로를 지정하면 됩니다. 코드 실행 시 해당 파일은 “.bak” 확장자를 가지는 새로운 파일로 저장됩니다.
결론
Apache POI를 사용하면 Word 문서를 백업하는 것이 간단하고 효율적으로 가능합니다. 이를 이용하여 데이터 손실로부터 안전하게 문서를 보호할 수 있습니다.