如何在jsp页面显示word文档内容
2个回答
2017-04-15
展开全部
1、利用jacob包将用户上传的word文件转换成htm格式,必须是“筛选过的网页”,不然显示不了图片;
2、将转换好的htm格式文档路径存入数据库,读的时候就在数据库里读。
jacob1.8包下载地址:http://sourceforge.net/projects/jacob-project/
可能会抛出no jacob in java.library.path异常,解决办法如下:
1、 把jacob.dll在 C:/Program Files/Java/jdk1.5.0_08/bin、C:/Program Files/Java/jdk1.5.0_08/jre/bin、 C:/WINDOWS/system32 目录下各.放一份
2、把jacob.jar放入 项目的lib包下
将word文档转换为htm格式的java代码如下:
import com.jacob.com.*;
import com.jacob.activeX.*;
import java.io.*;
public class WordToHtml {
//将指定目录下面的指定doc文件转化为HTML并存储在savepaths目录下
public static void change(String filepaths, String savepaths) {
File f = new File(filepaths);
String filename = f.getName();
String filetype = filename.substring((filename.length() - 3), filename.length());// 取得文件类型
if (filetype.equals("doc")) {// 判断是否为doc文件
System.out.println("当前正在转换......");
// 打印当前目录路径
System.out.println(filepaths);
ActiveXComponent app = new ActiveXComponent("Word.Application");// 启动word
String docpath = filepaths;
String htmlpath = savepaths + filename.substring(0, (filename.length() - 4));
String inFile = docpath;
// 要转换的word文件
String tpFile = htmlpath;
// HTML文件
boolean flag = false;
try {
app.setProperty("Visible", new Variant(false));// 设置word不可见
Object docs = app.getProperty("Documents").toDispatch();
Object doc = Dispatch.invoke(docs,"Open",Dispatch.Method,new Object[] { inFile, new Variant(false),new Variant(true) },
new int[1]).toDispatch();// 打开word文件
/*
* new Variant(10)筛选过的网页
* new Variant(9) 单个文件网页
* new Variant(8) 另存为网页
* new Variant(7) 另存为txt格式
* new Variant(6) 另存为rtf格式
* new Variant(0) 另存为doc格式
*/
Dispatch.invoke(doc, "SaveAs", Dispatch.Method, new Object[] {tpFile, new Variant(10) }, new int[1]);// 作为html格式保存到临时文件
Variant fl = new Variant(false);
Dispatch.call(doc, "Close", fl);
flag = true;
} catch (Exception e) {
e.printStackTrace();
} finally {
app.invoke("Quit", new Variant[] {});
}
System.out.println("转化完毕!");
}
}
public static void main(String[] args) {
//转换目录下的所有doc文件
// String paths = new String("D://test//");
String savepaths = new String("D://test//");
// changeAll(paths, savepaths);
//
//转换指定doc文件
String filepaths = "D://test.doc";
change(filepaths, savepaths);
}
}
2、将转换好的htm格式文档路径存入数据库,读的时候就在数据库里读。
jacob1.8包下载地址:http://sourceforge.net/projects/jacob-project/
可能会抛出no jacob in java.library.path异常,解决办法如下:
1、 把jacob.dll在 C:/Program Files/Java/jdk1.5.0_08/bin、C:/Program Files/Java/jdk1.5.0_08/jre/bin、 C:/WINDOWS/system32 目录下各.放一份
2、把jacob.jar放入 项目的lib包下
将word文档转换为htm格式的java代码如下:
import com.jacob.com.*;
import com.jacob.activeX.*;
import java.io.*;
public class WordToHtml {
//将指定目录下面的指定doc文件转化为HTML并存储在savepaths目录下
public static void change(String filepaths, String savepaths) {
File f = new File(filepaths);
String filename = f.getName();
String filetype = filename.substring((filename.length() - 3), filename.length());// 取得文件类型
if (filetype.equals("doc")) {// 判断是否为doc文件
System.out.println("当前正在转换......");
// 打印当前目录路径
System.out.println(filepaths);
ActiveXComponent app = new ActiveXComponent("Word.Application");// 启动word
String docpath = filepaths;
String htmlpath = savepaths + filename.substring(0, (filename.length() - 4));
String inFile = docpath;
// 要转换的word文件
String tpFile = htmlpath;
// HTML文件
boolean flag = false;
try {
app.setProperty("Visible", new Variant(false));// 设置word不可见
Object docs = app.getProperty("Documents").toDispatch();
Object doc = Dispatch.invoke(docs,"Open",Dispatch.Method,new Object[] { inFile, new Variant(false),new Variant(true) },
new int[1]).toDispatch();// 打开word文件
/*
* new Variant(10)筛选过的网页
* new Variant(9) 单个文件网页
* new Variant(8) 另存为网页
* new Variant(7) 另存为txt格式
* new Variant(6) 另存为rtf格式
* new Variant(0) 另存为doc格式
*/
Dispatch.invoke(doc, "SaveAs", Dispatch.Method, new Object[] {tpFile, new Variant(10) }, new int[1]);// 作为html格式保存到临时文件
Variant fl = new Variant(false);
Dispatch.call(doc, "Close", fl);
flag = true;
} catch (Exception e) {
e.printStackTrace();
} finally {
app.invoke("Quit", new Variant[] {});
}
System.out.println("转化完毕!");
}
}
public static void main(String[] args) {
//转换目录下的所有doc文件
// String paths = new String("D://test//");
String savepaths = new String("D://test//");
// changeAll(paths, savepaths);
//
//转换指定doc文件
String filepaths = "D://test.doc";
change(filepaths, savepaths);
}
}
博思aippt
2024-07-20 广告
2024-07-20 广告
作为深圳市博思云创科技有限公司的工作人员,对于Word文档生成PPT的操作,我们有以下建议:1. 使用另存为功能:在Word中编辑完文档后,点击文件->另存为,选择PowerPoint演示文稿(*.pptx)格式,即可将文档内容转换为PPT...
点击进入详情页
本回答由博思aippt提供
2017-05-08
展开全部
把word另存为.pdf
<iframe src="xxx.pdf"></iframe>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询