jacob如何获取word文档的页码
2014-08-05 16:56
260 查看
ActiveXComponent app = new ActiveXComponent("Word.Application"); //启动word
String inFile = "C:\\TEMP\\test.doc";
app.setProperty("Visible", new Variant(false)); //设置word不可见
Dispatch docs = app.getProperty("Documents").toDispatch();
Dispatch doc = Dispatch.invoke(docs,"Open",Dispatch.Method,
new Object[] { inFile, new Variant(false),new Variant(false) }, new int[1]).toDispatch();
/*方法1: 通过查找文本取页码*/
Dispatch selection = app.getProperty("Selection").toDispatch();//获得对Selection组件
Dispatch.call(selection, "HomeKey", new Variant(6));//移到开头
Dispatch find = Dispatch.call(selection, "Find").toDispatch();//获得Find组件
Dispatch.put(find, "Text", "二、成果简介"); //查找字符串"二、成果简介"
Dispatch.call(find, "Execute"); //执行查询
String pages = Dispatch.call(selection, "Information",new Variant(3)).toString();
System.out.println("文本所在页码:"+startpages);
/*方法2: 通过查找书签取页码*/
Dispatch bookMarks=Dispatch.call(doc,"Bookmarks").toDispatch();
boolean bookMarkExist=Dispatch.call(bookMarks,"Exists","mark3").toBoolean();
if(bookMarkExist){
Dispatch rangeItem=Dispatch.call(bookMarks,"Item","mark3").toDispatch();
Dispatch range=Dispatch.call(rangeItem,"Range").toDispatch();
String markpage = Dispatch.call(range, "Information",new Variant(3)).toString();
System.out.println("bookmark page:"+endpages);
}
String inFile = "C:\\TEMP\\test.doc";
app.setProperty("Visible", new Variant(false)); //设置word不可见
Dispatch docs = app.getProperty("Documents").toDispatch();
Dispatch doc = Dispatch.invoke(docs,"Open",Dispatch.Method,
new Object[] { inFile, new Variant(false),new Variant(false) }, new int[1]).toDispatch();
/*方法1: 通过查找文本取页码*/
Dispatch selection = app.getProperty("Selection").toDispatch();//获得对Selection组件
Dispatch.call(selection, "HomeKey", new Variant(6));//移到开头
Dispatch find = Dispatch.call(selection, "Find").toDispatch();//获得Find组件
Dispatch.put(find, "Text", "二、成果简介"); //查找字符串"二、成果简介"
Dispatch.call(find, "Execute"); //执行查询
String pages = Dispatch.call(selection, "Information",new Variant(3)).toString();
System.out.println("文本所在页码:"+startpages);
/*方法2: 通过查找书签取页码*/
Dispatch bookMarks=Dispatch.call(doc,"Bookmarks").toDispatch();
boolean bookMarkExist=Dispatch.call(bookMarks,"Exists","mark3").toBoolean();
if(bookMarkExist){
Dispatch rangeItem=Dispatch.call(bookMarks,"Item","mark3").toDispatch();
Dispatch range=Dispatch.call(rangeItem,"Range").toDispatch();
String markpage = Dispatch.call(range, "Information",new Variant(3)).toString();
System.out.println("bookmark page:"+endpages);
}
相关文章推荐
- 如何利用Java-JACOB操作WORD文档
- Java如何获取word文档的条目化内容
- 如何利用Java-JACOB操作WORD文档
- 用word2010英文版如何为同一篇word文档设置多个不同的页眉页脚页码
- 如何利用Java-JACOB操作WORD文档
- 如何通过代码获取word文档使用的语言
- Word文档如何从中间某一页开始设置页码
- 如何利用Java-JACOB操作WORD文档
- 如何利用Java-JACOB操作WORD文档
- 如何使WORD文档的页眉不相同
- 如何修复word文档
- 在word文档中从第3页开始编页码的方法
- 如何用jacob在word中添加文本框?急!!!!!!!
- 如何生成word文档的源码
- 如何生成word文档的源码
- 如何在控制台程序中读取WORD文档的内容?
- 如何把word文档转换成html
- 获取word文档或rtf格式文档的格式编码(可以应用此格式将字符以数据流的方式写入word或rtf文档)
- Java如何操作Word, Excel, PDF文档(2)
- 如何在delphi5中实现对word文档页眉的设置?