使用JAVA POI操作Word文档
Microsoft Word是一种常用的文档处理软件,它提供了丰富的功能和格式选项。在JAVA开发中,我们可以使用Apache POI库来操作Word文档,实现自动化的文档处理。本文将介绍如何使用JAVA POI库来创建、读取和修改Word文档,以及一些常用的操作示例。
1. 引入POI库
首先,我们需要在项目中引入POI库。可以通过在项目的Maven配置中添加以下依赖项来实现:
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.1.2</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.1.2</version>
</dependency>
这样,我们就可以在项目中使用POI库提供的类和方法来操作Word文档了。
2. 创建Word文档
下面的示例代码演示了如何使用POI库创建一个简单的Word文档,并添加一些文本内容:
import org.apache.poi.xwpf.usermodel.*;
public class CreateWordDocument {
public static void main(String[] args) {
// 创建一个新的Word文档
XWPFDocument document = new XWPFDocument();
// 创建一个段落
XWPFParagraph paragraph = document.createParagraph();
// 创建一个文本运行
XWPFRun run = paragraph.createRun();
run.setText("Hello, World!");
// 保存文档
try {
FileOutputStream out = new FileOutputStream("document.docx");
document.write(out);
out.close();
System.out.println("Word文档已创建成功!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
运行以上代码后,会在项目的根目录下生成一个名为document.docx
的Word文档,其中包含了一段文本内容"Hello, World!"。
3. 读取Word文档
除了创建新的Word文档,我们还可以使用POI库来读取已有的Word文档,并提取其中的内容。下面的示例代码演示了如何读取一个Word文档中的文本内容:
import org.apache.poi.xwpf.usermodel.*;
public class ReadWordDocument {
public static void main(String[] args) {
try {
// 打开一个现有的Word文档
FileInputStream fis = new FileInputStream("document.docx");
XWPFDocument document = new XWPFDocument(fis);
// 读取文档中的段落
List<XWPFParagraph> paragraphs = document.getParagraphs();
for (XWPFParagraph paragraph : paragraphs) {
System.out.println(paragraph.getText());
}
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
运行以上代码后,会将document.docx
文档中的所有段落内容输出到控制台。
4. 修改Word文档
POI库还提供了一些方法来修改Word文档的内容,例如插入图片、修改字体样式等。下面的示例代码演示了如何向一个现有的Word文档中插入一张图片:
import org.apache.poi.xwpf.usermodel.*;
public class ModifyWordDocument {
public static void main(String[] args) {
try {
// 打开一个现有的Word文档
FileInputStream fis = new FileInputStream("document.docx");
XWPFDocument document = new XWPFDocument(fis);
// 插入一张图片
XWPFParagraph paragraph = document.createParagraph();
XWPFRun run = paragraph.createRun();
run.addPicture(new FileInputStream("image.png"), XWPFDocument.PICTURE_TYPE_PNG, "image.png", Units.toEMU(200), Units.toEMU(200));
// 保存修改后的文档
FileOutputStream out = new FileOutputStream("modified_document.docx");
document.write(out);
out.close();
fis.close();
System.out.println("Word文档已修改成功!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
运行以上代码后,会生成一个名为modified_document.docx
的文档,在其中插入了名为image.png
的图片。
本文介绍了如何使用JAVA POI库来操作Word文档,包括创建、读取