這篇文章主要介紹了如何通過Java程序來添加及刪除Word書簽,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

Word中,書簽功能常用于查找、定位、標(biāo)記特定字符或段落,對(duì)于篇幅較大的文檔,此功能非常實(shí)用。示例要點(diǎn)包括:
1. 添加書簽
1.1 給指定段落添加書簽
1.2 給指定字符串添加書簽
2. 刪除書簽
2.1刪除書簽
2.2 刪除書簽文本
3. 讀取書簽文本
使用工具:Free Spire.Doc for Java (免費(fèi)版)
Jar文件獲取及導(dǎo)入:
方法1: 通過官網(wǎng)下載jar文件包。下載后,解壓文件。并將lib文件夾下的Spire.Doc.jar文件導(dǎo)入到j(luò)ava程序。參考如下導(dǎo)入效果:

方法2:可通過maven倉庫安裝導(dǎo)入。可參考安裝導(dǎo)入方法。
【示例1】給指定段落添加書簽
import com.spire.doc.*;
import com.spire.doc.documents.Paragraph;
public class AppendBookmark {
public static void main(String[]args){
//加載需要添加書簽的Word文檔
Document doc = new Document();
doc.loadFromFile("sample.docx");
//獲取需要添加書簽的段落
Paragraph para = doc.getSections().get(0).getParagraphs().get(1);
//在段落起始、末尾添加書簽的開始標(biāo)簽和結(jié)束標(biāo)簽,并命名書簽
BookmarkStart start = para.appendBookmarkStart("bookmark01");
para.getItems().insert(0,start);
para.appendBookmarkEnd("bookmark01");
//保存文檔
doc.saveToFile("appendbookmark.docx",FileFormat.Docx_2013);
doc.dispose();
}
}書簽添加效果:

【示例2】給指定字符串添加書簽
import com.spire.doc.*;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.documents.TextSelection;
import com.spire.doc.fields.TextRange;
public class AppendBookmarkToCharacter {
public static void main(String[]args){
//加載文檔
Document doc = new Document();
doc.loadFromFile("sample.docx");
//查找指定字符串
TextSelection textSelection = doc.findString("采用蘊(yùn)含深意的象征語言,揭示人生的哲理。",false,false);
TextRange range = textSelection.getAsOneRange();
Paragraph para = range.getOwnerParagraph();
int index = para.getChildObjects().indexOf(range);
//添加書簽
BookmarkStart start = new BookmarkStart(doc,"書簽1");
BookmarkEnd end = new BookmarkEnd(doc, "書簽1");
para.getChildObjects().insert(index, start);
para.getChildObjects().insert(index + 2, end);
//保存文檔
doc.saveToFile("appendbookmarktocharacter.docx",FileFormat.Docx_2013);
doc.dispose();
}
}字符串書簽添加效果:

【示例3】刪除書簽、書簽文本
import com.spire.doc.*;
import com.spire.doc.documents.BookmarksNavigator;
public class DeleteBookmarkAndBookmarkcontent {
public static void main(String[]args){
//加載文檔
Document doc = new Document();
doc.loadFromFile("test.docx");
//定位到特定的書簽
BookmarksNavigator bookmarksNavigator = new BookmarksNavigator(doc);
bookmarksNavigator.moveToBookmark("bookmark1");
//刪除書簽處的內(nèi)容
bookmarksNavigator.deleteBookmarkContent(true);
//刪除書簽(僅刪除書簽標(biāo)簽,原文書簽處的內(nèi)容)
doc.getBookmarks().remove(doc.getBookmarks().get("bookmark1"));//通過書簽名刪除
doc.getBookmarks().removeAt(0);//通過索引值刪除
//保存文檔
doc.saveToFile("deletebookmark.docx",FileFormat.Docx_2013);
}
}【示例4】讀取書簽文本
import com.spire.doc.*;
import com.spire.doc.documents.BookmarksNavigator;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.documents.TextBodyPart;
import com.spire.doc.fields.TextRange;
import java.io.IOException;
import java.io.PrintWriter;
public class GetBookmarkText {
public static void main(String[]args) throws IOException {
//加載包含書簽的Word文檔
Document doc = new Document();
doc.loadFromFile("test.docx");
//獲取書簽
BookmarksNavigator bookmarksNavigator = new BookmarksNavigator(doc);
bookmarksNavigator.moveToBookmark("bookmark1");
//獲取書簽文本
TextBodyPart textBodyPart = bookmarksNavigator.getBookmarkContent();
//創(chuàng)建String變量
String text = "";
//遍歷書簽內(nèi)容的項(xiàng)目
for (Object item : textBodyPart.getBodyItems()) {
//判斷項(xiàng)目是否為段落
if (item instanceof Paragraph) {
Paragraph paragraph = (Paragraph) item;
//遍歷段落中的子對(duì)象
for (Object childObj : paragraph.getChildObjects()) {
//判斷子對(duì)象是否為TextRange
if (childObj instanceof TextRange) {
//獲取TextRange中的文本
TextRange textRange = (TextRange) childObj;
text = text + textRange.getText();
}
}
}
}
//將獲取到的文本寫入Txt文件
PrintWriter printWriter = new PrintWriter("BookmarkText.txt");
printWriter.println(text);
printWriter.close();
}
}書簽讀取結(jié)果:

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“如何通過Java程序來添加及刪除Word書簽”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!
本文標(biāo)題:如何通過Java程序來添加及刪除Word書簽-創(chuàng)新互聯(lián)
網(wǎng)站鏈接:http://chinadenli.net/article36/dghdsg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、App開發(fā)、商城網(wǎng)站、建站公司、手機(jī)網(wǎng)站建設(shè)、營銷型網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容