public static void getBooknameList() throws IOException{ //加载包含书签的Word文档 com.spire.doc.Document doc = new com.spire.doc.Document(); doc.loadFromFile("D:\\response.docx"); for (Object item :doc.getBookmarks()) { Bookmark bm =(Bookmark) item; System.out.println(bm.getName()); geContentText(doc,bm.getName()); } } public static void geContentText(Document doc, String bookname){ //获取书签 BookmarksNavigator bookmarksNavigator = new BookmarksNavigator(doc); bookmarksNavigator.moveToBookmark(bookname); //获取书签文本 TextBodyPart textBodyPart = bookmarksNavigator.getBookmarkContent(); //创建String变量 //遍历书签内容的项目 String text = ""; for (Object item : textBodyPart.getBodyItems()){ if (item instanceof Paragraph){ Paragraph paragraph = (Paragraph) item; for (Object childObj : paragraph.getChildObjects()){ // System.out.println(childObj); if (childObj instanceof TextRange){ text+=((TextRange)childObj).getText(); // System.out.println(text); } else if (childObj instanceof StructureDocumentTagInline){ StructureDocumentTagInline tagInline = (StructureDocumentTagInline) childObj; for (Object obj2:tagInline.getChildObjects()){ if (obj2 instanceof TextRange){ text+=((TextRange)obj2).getText(); } } } } System.out.println(paragraph.getChildObjects()+":"+text); } } }
java 获取word书签的内容,书签添加了纯文本内容控件
于 2023-08-22 11:07:08 首次发布
本文介绍了如何使用Java和Spire.Doc库加载Word文档,获取并打印指定书签名下的文本内容,包括段落和结构标签中的文本。
摘要由CSDN通过智能技术生成