Microsoft Word 문서는 많은 사람들이 일상적인 업무나 학업에서 사용하는 중요한 도구입니다. 때로는 Word 문서에 저장된 데이터를 읽거나 편집해야 할 때가 있습니다. 이를 위해 Apache POI 라이브러리를 사용할 수 있습니다.
Apache POI는 Java로 작성된 라이브러리로, Microsoft Office 포맷인 Word, Excel, PowerPoint 등을 생성하고 편집할 수 있습니다. 본 포스트에서는 Apache POI를 사용하여 Word 문서를 읽고 쓰는 방법에 대해 알아보겠습니다.
1. Apache POI 종속성 추가하기
먼저 Maven 또는 Gradle 프로젝트에서 Apache POI를 사용하기 위해 종속성을 추가해야 합니다.
Maven 예시
<dependencies>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.1.2</version>
</dependency>
</dependencies>
Gradle 예시
dependencies {
compile group: 'org.apache.poi', name: 'poi', version: '4.1.2'
}
2. Word 문서 읽기
Apache POI를 사용하여 Word 문서를 읽기 위해 다음의 단계를 따릅니다.
2.1. FileInputStream 생성
읽을 Word 문서의 경로로 FileInputStream을 생성합니다.
FileInputStream fis = new FileInputStream("path/to/word/document.docx");
2.2. XWPFDocument 생성
XWPFDocument 객체를 생성하여 FileInputStream을 사용해 Word 문서를 로드합니다.
XWPFDocument document = new XWPFDocument(fis);
2.3. 문서 내용 확인
document 객체를 사용하여 Word 문서의 내용을 확인할 수 있습니다. 예를 들어, 문서의 모든 Paragraph를 출력하는 코드는 다음과 같습니다.
List<XWPFParagraph> paragraphs = document.getParagraphs();
for (XWPFParagraph paragraph : paragraphs) {
System.out.println(paragraph.getText());
}
3. Word 문서 쓰기
Apache POI를 사용하여 Word 문서를 쓰기 위해 다음의 단계를 따릅니다.
3.1. XWPFDocument 생성
먼저 XWPFDocument 객체를 생성합니다.
XWPFDocument document = new XWPFDocument();
3.2. 문서에 내용 추가
document 객체를 사용하여 문서에 내용을 추가할 수 있습니다. 예를 들어, 새로운 Paragraph를 생성하고 텍스트를 설정하는 코드는 다음과 같습니다.
XWPFParagraph paragraph = document.createParagraph();
XWPFRun run = paragraph.createRun();
run.setText("Hello, World!");
3.3. 문서 저장
최종적으로, 작성한 Word 문서를 파일로 저장합니다.
FileOutputStream fos = new FileOutputStream("path/to/save/document.docx");
document.write(fos);
결론
Apache POI를 사용하면 Java 코드로 Word 문서를 읽고 쓸 수 있습니다. 이를 통해 문서 처리 작업을 자동화하거나 원하는 형식으로 디자인된 문서를 생성할 수 있습니다.
더 많은 기능과 사용법은 Apache POI 공식 문서를 참고하시기 바랍니다.