This article demonstrates how to get the text inside a bookmark in a Word document using Spire.Doc for Java.
import com.spire.doc.Document; 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.FileNotFoundException; import java.io.PrintWriter; public class GetBookmarkText { public static void main(String[] args) throws FileNotFoundException { //create a Document object Document doc = new Document(); //load a sample Word file doc.loadFromFile("C:\\Users\\Administrator\\Desktop\\sample.docx"); //get the specific bookmark BookmarksNavigator navigator = new BookmarksNavigator(doc); navigator.moveToBookmark("MyBookmark"); //get the bookmark content TextBodyPart textBodyPart = navigator.getBookmarkContent(); //declare a String variable String text = ""; //loop through body items for (Object item : textBodyPart.getBodyItems()) { //determine if an item is a paragraph if (item instanceof Paragraph) { Paragraph paragraph = (Paragraph) item; //loop through the child objects of the paragraph for (Object childObj : paragraph.getChildObjects()) { //determine if a child object is a text range if (childObj instanceof TextRange) { //get text from the text range TextRange textRange = (TextRange) childObj; text = text + textRange.getText(); } } } } //write the bookmark text to a .txt file PrintWriter printWriter = new PrintWriter("output/BookmarkText.txt"); printWriter.println(text); printWriter.close(); } }