Оглавление
Установить с помощью Maven
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.doc</artifactId>
<version>12.2.2</version>
</dependency>
Ссылки по теме
Переменные в документах Word — это тип поля, который характеризуется возможностью удобного и точного управления текстом, например, замены и удаления текста. По сравнению с функцией поиска и замены замена текста путем присвоения значений переменным выполняется быстрее и менее подвержена ошибкам. В этой статье мы покажем, как добавлять или изменять переменные в документах Word программно с помощью Spire.Doc for Java.
Установите Spire.Doc for Java
Во-первых, вам необходимо добавить файл Spire.Doc.jar в качестве зависимости в вашу программу Java. JAR-файл можно скачать по этой ссылке. Если вы используете Maven, вы можете легко импортировать файл JAR в свое приложение, добавив следующий код в файл pom.xml вашего проекта.
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.doc</artifactId>
<version>13.11.2</version>
</dependency>
</dependencies>
Вставка переменных в документы Word
Поскольку переменные являются разновидностью полей Word, мы можем использовать метод Paragraph.appendField(String fieldName, FieldType.Field_Doc_Variable) для вставки переменных в документы Word, а затем использовать метод VariableCollection.add() для присвоения значений переменным. Следует отметить, что после присвоения значений переменным поля документа необходимо обновить для отображения присвоенных значений. Подробные шаги заключаются в следующем.
- Создайте объект Document.
- Добавьте раздел в документ с помощью метода Document.addSection().
- Добавьте абзац в раздел, используя метод Раздел.addParagraph().
- Добавьте переменные поля в абзац с помощью метода Paragraph.appendField(String fieldName, FieldType.Field_Doc_Variable).
- Получите коллекцию переменных, используя метод Document.getVariables().
- Присвойте значение переменной с помощью метода VariableCollection.add().
- Обновите поля в документе с помощью метода Document.isUpdateFields().
- Сохраните документ, используя метод Document.saveToFile().
- Java
import com.spire.doc.*;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.formatting.CharacterFormat;
public class AddVariables {
public static void main(String[] args) {
//Create an object of Document
Document document = new Document();
//Add a section
Section section = document.addSection();
//Add a paragraph
Paragraph paragraph = section.addParagraph();
//Set text format
CharacterFormat characterFormat = paragraph.getStyle().getCharacterFormat();
characterFormat.setFontName("Times New Roman");
characterFormat.setFontSize(14);
//Set the page margin
section.getPageSetup().getMargins().setTop(80f);
//Add variable fields to the paragraph
paragraph.appendField("Term", FieldType.Field_Doc_Variable);
paragraph.appendText(" is an object.\r\n");
paragraph.appendField("Term", FieldType.Field_Doc_Variable);
paragraph.appendText(" is not a backdrop, an illusion, or an emergent phenomenon.\r\n");
paragraph.appendField("Term", FieldType.Field_Doc_Variable);
paragraph.appendText(" has a physical size that be measured in laboratories.");
//Get the variable collection
VariableCollection variableCollection = document.getVariables();
//Assign a value to the variable
variableCollection.add("Term", "Time");
//Update the fields in the document
document.isUpdateFields(true);
//Save the document
document.saveToFile("AddVariables.docx", FileFormat.Auto);
document.dispose();
}
}

Изменение значения переменных в документах Word
Spire.Doc for Java предоставляет метод VariableCollection.set() для изменения значений переменных. А после обновления полей в документе все вхождения переменных будут отображать вновь присвоенное значение, что обеспечивает быструю и точную замену текста. Подробные шаги заключаются в следующем.
- Создайте объект Document.
- Загрузите документ Word, используя метод Document.loaFromFile().
- Получите коллекцию переменных, используя метод Document.getVariables().
- Присвойте новое значение определенной переменной через ее имя с помощью метода VariableCollection.set().
- Обновите поля в документе с помощью метода Document.isUpdateFields().
- Сохраните документ, используя метод Document.saveToFile().
- Java
import com.spire.doc.Document;
import com.spire.doc.FileFormat;
import com.spire.doc.VariableCollection;
public class ChangeVariableValue {
public static void main(String[] args) {
//Create an object of Document
Document document = new Document();
//Load a Word document
document.loadFromFile("AddVariables.docx");
//Get the variable collection
VariableCollection variableCollection = document.getVariables();
//Assign a new value to a variable
variableCollection.set("Term", "The time");
//Update the fields in the document
document.isUpdateFields(true);
//Save the document
document.saveToFile("ChangeVariable.docx", FileFormat.Auto);
document.dispose();
}
}

Подать заявку на временную лицензию
Если вы хотите удалить сообщение об оценке из сгенерированных документов или избавиться от ограничений функции, пожалуйста запросите 30-дневную пробную лицензию для себя.