网上关于jacob如何操控word的例子已经有很多,但基本没有提到如何读取书签列表。

在这里对此我做点补充,jacob版本是1.17

ActiveXComponent word = new ActiveXComponent("Word.Application");

word.setProperty("Visible", new Variant(true));

Dispatch documents = word.getProperty("Documents").toDispatch();

Dispatch doc = Dispatch.call(documents, "Open", "e:/abc.doc").toDispatch();

//书签集合

Dispatch bookMarks = word.call(doc, "Bookmarks").toDispatch();

List lstBookMarks = new ArrayList();
        int bCount = Dispatch.get(bookMarks, "Count").getInt();

//将书签列表存放到list + map 结构中

for (int i = 1; i <= bCount; i++) {
         Map bookMark = new HashMap();
         Dispatch item = Dispatch.call(bookMarks, "Item", i).toDispatch(); 
         String item_name = String.valueOf(Dispatch.get(item, "Name").getString()).replaceAll("null", "");   //读取书签命名
        
         Dispatch range = Dispatch.get(item, "Range").toDispatch();
         String item_value = String.valueOf(Dispatch.get(range, "Text").getString()).replaceAll("null", ""); //读取书签文本
        
         if(!item_name.equals("")){
          bookMark.put("NAME", item_name);
          bookMark.put("TEXT", item_value);
          lstBookMarks.add(bookMark);
         }
        }

....略

用jacob读取word的书签列表相关推荐

  1. jacob读取word速度优化

    我所遇到的读取速度慢的原因在于读取word后关闭本地线程速度过慢,所以创建静态对象,线程不关闭,多次读取使用同一线程 代码如下 public static MSWordManager msWordMa ...

  2. java 读取word书签_Java 添加、读取、删除Word书签

    书签,意指一本书的标签,主要用于使读者更快地找到阅读或修改的位置.同理,在Word中编辑或阅读文档时,也可通过使用书签来对某一处或几处进行标记,以便后期能够快速定位到指定文档位置,节约查找时间.本文将 ...

  3. java获取word书签表格数据_Python读取word文档里面的表格数据

    更多精彩,请点击上方蓝字关注我们! 我们常见的办公数据通常可以分为结构化数据与非结构化数据,比如常见的word, ppt, excel.前两者存储的是非结构化数据,excel存储的是结构化数据.从事数 ...

  4. Jacob处理Word文档总结以及Java操作Office2007

    使用Jacob来处理Word文档 Word或Excel程序是以一种COM组件形式存在的.如果能够在Java中调用Word的COM组件,就 能使用它的方法来获取Word文档中的文本信息.目前网上有许多提 ...

  5. python批量提取word指定内容_使用python批量读取word文档并整理关键信息到excel表格的实例...

    目标 最近实验室里成立了一个计算机兴趣小组 倡议大家多把自己解决问题的经验记录并分享 就像在CSDN写博客一样 虽然刚刚起步 但考虑到后面此类经验记录的资料会越来越多 所以一开始就要做好模板设计(如下 ...

  6. VBA读取html表格内容,科学网—VBA读取word文档表格中table的cell的text文本 - 付安民的博文...

    VBA读取word文档表格中table的cell的text文本 已有 11546 次阅读 2010-6-4 16:40 |个人分类:学习篇|系统分类:科研笔记 Sub Readtable() Dim ...

  7. java poi读取word中附件_java用poi实现对word读取和修改操作

    java编程要实现对word的操作没有vb那种编程语言来得容易,得借助一些开源组件,其中就包括jacob.poi等, 而poi应用得最为广泛,对word2003和2007的读和写word操作都十分方便 ...

  8. java准确读取word文件页数

    转自:https://blog.csdn.net/tiandixuanwuliang/article/details/71298406 由于本人在做一个网上打印网站,遇到了一个需求是"准确读 ...

  9. jacob根据word模板生成文

    最近的任务要求根据word模板生成检查报告,选择使用jacob,它对word的支持还可以,它是Java-COM中间件,通过这个组件可以调用COM组件和Win32程序库. 因此它在环境上有一定的局限性. ...

最新文章

  1. RequestDispatcher
  2. ubuntu装机必备
  3. 使用代码获得Netweaver里某个software component和C4C的版本
  4. 数风·数林 | 炉石传说中的概率(声控篇)
  5. mac上解决中文乱码, arara实现LaTex多命令执行, LaTeXiT法文界面转英文
  6. android 调用 asp.net web api,从 .NET 客户端调用 Web API (C#)
  7. Qt Supported Databases
  8. LwIP协议栈的学习与应用
  9. 关于EPCS系列芯片的说明
  10. 小程序开发商可以在哪里接项目订单/有几种接单方式
  11. c语言中 输入有两行:第一行是一个正整数n,第二行是n个整数,c语言问题:输入格式 输入有多组数据.每组数据两行.第一行包含一个正整数n(小于等于1000...
  12. mininet-wifi安装openflow13
  13. 【报错】UnboundLocalError: local variable ‘xxx‘ referenced before assignment
  14. 干货!Labeling Trick: 一个图神经网络多节点表示学习理论
  15. MATLAB实现在不同Es/N0情况下,QPSK、16QAM、64QAM误码率结果仿真图(包含软硬判决)
  16. Java实现输出100-1000的水仙花数
  17. Laravel 的 Auth::attempt () 初探及修改 bcrypt 验证为 MD5
  18. 从开发转到安全渗透工程师,是我做的最对的决定
  19. 发送企业微信工资条消息
  20. 全国OSTA计算机高新技术SQLSever数据库四级证书--考证复习知识点集合(附下载地址)

热门文章

  1. python datetime 加一个月_在当前日期加一年PYTHON
  2. 国产安路FPGA(二)-TD软件仿真(Modelsim)
  3. java计算机毕业设计高校勤工助学管理系统MyBatis+系统+LW文档+源码+调试部署
  4. 4月15日欧美小长假 主力休息对市场有何影响?
  5. 微服务调用失败的一种解决方案
  6. STM32通过ESP8266利用机智云平台实现手机远程操作
  7. 从mysql8.0读取数据并形成pandas dataframe类型数据,精确定位行列式中的元素,并读取...
  8. 搜索引擎的数据库设计
  9. 诺基亚(NOKIA)手机 功能代码
  10. 移动端Chrome怎样才能一直保持桌面版网站呢?