word 文档中的变量是一种域,其特点是能够便捷、精确地对文本进行管理,如替换文本、删除文本等操作。与查找替换功能相比,通过给变量赋值的方式来替换文本通常更快捷,且不容易出错。本文将介绍如何使用 spire.doc for java 通过程序在 word 文档中添加或更改变量。
安装 spire.doc for java
首先,您需要在 java 程序中添加 spire.doc.jar 文件作为依赖项。您可以从此链接下载 jar 文件;如果您使用 maven,则可以通过在 pom.xml 文件中添加以下代码导入 jar 文件。
com.e-iceblue
e-iceblue
https://repo.e-iceblue.cn/repository/maven-public/
e-iceblue
spire.doc
11.9.5
插入变量到 word 文档
由于 word 文档中的变量是域的一种,我们可以直接使用插入域的 paragraph.appendfield(string fieldname, fieldtype.field_doc_variable) 方法来插入变量到 word 文档中,然后再使用 variablecollection.add() 方法来给变量赋值。需要注意的是,在给变量赋值后,还需要更新文档中的域,赋的值才会在打开 word 文档时显示出来。插入变量的详细操作步骤如下:
- 创建 document 的对象。
- 使用 document.addsection() 方法在文档中添加一个节。
- 使用 section.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) {
//创建document
document document = new document();
//添加一个节
section section = document.addsection();
//添加一个段落
paragraph paragraph = section.addparagraph();
//设置文本格式
characterformat characterformat = paragraph.getstyle().getcharacterformat();
characterformat.setfontname("微软雅黑");
characterformat.setfontsize(14);
//设置页边距
section.getpagesetup().getmargins().settop(80f);
//添加变量到段落
paragraph.appendfield("物理量", fieldtype.field_doc_variable);
paragraph.appendtext("是物质的永恒运动、变化的持续性、顺序性的表现,包含时刻和时段两个概念。\r\n");
paragraph.appendfield("物理量", fieldtype.field_doc_variable);
paragraph.appendtext("是人类用以描述物质运动过程或事件发生过程的一个参数,确定");
paragraph.appendfield("物理量", fieldtype.field_doc_variable);
paragraph.appendtext(",是靠不受外界影响的物质周期变化的规律。");
//获取变量集合
variablecollection variablecollection = document.getvariables();
//给添加的变量赋值
variablecollection.add("物理量", "时间");
//更新文档中的域
document.isupdatefields(true);
//保存文档
document.savetofile("添加变量.docx", fileformat.auto);
document.dispose();
}
}
更改 word 文档中变量的值
spire.doc for java 提供的 variablecollection.set() 可以更改指定变量的值。而在更改变量的值后,只需要更新文档中的域,文档中的所有此变量就会显示新的值,从而实现快速精确地替换的文本。以下是详细操作步骤:
- 创建 document 的对象。
- 使用 document.loafromfile() 方法载入 word 文档。
- 使用 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) {
//创建document的对象
document document = new document();
//载入word文档
document.loadfromfile("添加变量.docx");
//获取变量集合
variablecollection variablecollection = document.getvariables();
//给指定变量分配一个新的值
variablecollection.set("物理量", "time");
//更新文档中的域
document.isupdatefields(true);
//保存文档
document.savetofile("更改变量.docx", fileformat.auto);
document.dispose();
}
}
申请临时 license
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用javascript。获取有效期 30 天的临时许可证。