用于对齐 Word 文档中文本的Java程序
文本将首先使用Java中的 Apache 从 Word 文件中提取。 Apache POI 允许我们访问 Microsoft 文档,包括 Word、Excel 和 PowerPoint。 Java为我们提供了各种内置于环境中的包,方便我们阅读、编写和修改文档。 org.apache.poi.xwpf.usermodel包为我们提供了格式化和附加 Word 文档内容的各种功能。这个包中有各种可用的类,如 XWPFDocument 用于创建新的 Word 文档和 XWPFParagraph 用于创建新段落并将其写入相应创建的文档中。 File 类可用于在指定的 path-name 处创建文件,FileOutputStream 可用于创建文件流连接。该方法只是首先创建一个段落,为其设置对齐方式,然后使用内置函数向其中插入文本。
算法:
- 在为Java程序创建包时导入 jar 文件,并添加 jar 文件(如果必须按照 IDE)并导入 File 类。
- 通过创建 XWPFDocument 的对象来调用它。
- 传递 FileInputStream 作为参数来处理本地目录
- 在它内部传递路径名或使用扩展名命名文件。
- 创建一个空白文件和 FileOutputStream 连接。
- 使用createParagraph()方法创建一个段落。
- 使用内置函数中的setAllignment()设置对齐方式。
- 使用setText()函数插入文本。
- 使用 XWPF 类编写段落的内容
- 关闭连接。
实现:输入一个空白的Word文档,进行处理,将处理后的输出显示在同一个Word文档中。
Java
// Java Program to Align the Text in a Word document
// importing file libraries
import java.io.File;
import java.io.FileOutputStream;
// Importing API packages
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;
public class GFG {
// Main driver method
public static void main(String[] args) throws Exception
{
// Create a blank document
XWPFDocument xwpfdocument = new XWPFDocument();
// Create a blank file at C:
File file = new File("C:/alignParagraph.docx");
// Create a file output stream connection
FileOutputStream ostream
= new FileOutputStream(file);
// Creating new paragraph using the document
// createParagraph() for instantiate new paragraph
XWPFParagraph para = xwpfdocument.createParagraph();
// Set center alignment to paragraph in Java
paragraph.setAlignment(ParagraphAlignment.CENTER);
// createRun() method appends a new run to the
// paragraph created
XWPFRun xwpfrun = para.createRun();
/* Setting text to a paragraph */
// setText() method sets the text to the run
// created using XWPF run
xwpfrun.setText(
"Geeks for Geeks is a computer science portal which aims "
+ "to provide all in one platform for learning and "
+ "practicing.We can learn multiple "
+ "programming languages here. It also provided content for"
+ "UGC NET and JRF exams.");
// Create another paragraph
para = xwpfdocument.createParagraph();
// Set alignment of paragraph to right
para.setAlignment(ParagraphAlignment.RIGHT);
xwpfrun = para.createRun();
/* Set text to another paragraph */
xwpfrun.setText(
"It also helps you to also prepare for various other "
+ "competitive exams.Also lets you prepare for interviews.");
// Write content set using XWPF classes available
xwpfdocument.write(ostream);
// Close connection
ostream.close();
}
}
输出:代码在本地目录中创建一个文件: