java代码打开word java代码打开应用

怎么用java打开一个word文档啊File file = new File("XXX.doc");
Scanner input = new Scanner(file);
然后调用Scanner 类的方法就行,欢迎追问
java操作word 的有哪几种方式java读取word文档时,虽然网上介绍了很多插件poi、java2Word、jacob、itext等等,poi无法读取格式(新的API估
计行好像还在处于研发阶段 , 不太稳定,做项目不太敢用);java2Word、jacob容易报错找不到注册 , 比较诡异 , 我曾经在不同的机器上试过,操作
方法完全一致 , 有的机器不报错,有的报错 , 去他们论坛找高人解决也说不出原因 , 项目部署用它有点玄;itxt好像写很方便但是我查了好久资料没有见到过关
于读的好办法 。经过一番选择还是折中点采用rtf最好,毕竟rtf是开源格式,不需要借助任何插件,只需基本IO操作外加编码转换即可 。rtf格式文件表
面看来和doc没啥区别,都可以用word打开,各种格式都可以设定 。
----- 实现的功能:读取rtf模板内容(格式和文本内容),替换变化部分 , 形成新的rtf文档 。
----- 实现思路:模板中固定部分手动输入,变化的部分用$info$表示,只需替换$info$即可 。
1、采用字节的形式读取rtf模板内容
2、将可变的内容字符串转为rtf编码
3、替换原文中的可变部分,形成新的rtf文档
主要程序如下:
public String bin2hex(String bin) {
char[] digital = "0123456789ABCDEF".toCharArray();
StringBuffer sb = new StringBuffer("");
byte[] bs = bin.getBytes();
int bit;
for (int i = 0; ibs.length;i++) {
bit = (bs[i]0x0f0)
4;
sb.append("\\'");
sb.append(digital[bit]);
bit = bs[i]0x0f;
sb.append(digital[bit]);
}
return sb.toString();
}
public String readByteRtf(InputStream ins, String path){
String sourcecontent =
"";
try{
ins = new
FileInputStream(path);
byte[] b
= new byte[1024];
if (ins == null) {
System.out.println("源模板文件不存在");
}
int bytesRead = 0;
while (true) {
bytesRead = ins.read(b, 0, 1024); // return final read bytes
counts
if(bytesRead == -1) {// end of InputStream
System.out.println("读取模板文件结束");
break;
}
sourcecontent += new String(b, 0, bytesRead); // convert to string
using bytes
}
}catch(Exception e){
e.printStackTrace();
}
如何在java中操作word想用java操作word文件?jacob是个不错的选择,也就是java-com桥,你可以在下载,我下载的版本是1.12,注意版本太低的话可能会报错 。
如果没有特殊需求,可以直接使用jacob_*.zip中提供的jacob.jar和jacob.dll 。把jacob.dll文件放在系统可以找得到的
路径上,一般放c:/windows/system32下就行java代码打开word了,注意你用的jacob.dll文件和你的jacob.jar包要匹配,否则会报错哦!
如果想自己编译也很简单,把jacob_*_src.zip解开,建个工程 , 在build.xml中稍作配置即可java代码打开word:
property name="JDK" value="D:\Java\j2sdk1.4.2_13"/
property name="MSDEVDIR" value="D:\Microsoft Visual Studio\VC98"/
property name="version" value="https://www.04ip.com/post/1.12"/
看出来了吗 , 你的机器上需要有JDK和VC环境,VC是用来生成jacob.dll文件的,如果编译时说找不到MSPDB60.DLL,那就在你的
Microsoft Visual Studio目录下搜索一下,拷贝到D:\Microsoft Visual
Studio\VC98\Bin下就行了 。
如果需要对jacob里的jar包改名,(虽然通常不会发生这种情况,但如果你需要两个版本的jacob同时使用,改名可能是一种选择),这时你的工作就多一些java代码打开word:

推荐阅读