- 浏览: 41218 次
- 性别:
- 来自: 北京
-
最新评论
在线打开word .
2010-05-10 17:16 1842人阅读 评论(0) 收藏 举报
http://www.68design.net/Development/JSP/19165-1.html
http://www.ninedns.com/JSP/200742218370011634.html
http://wenwenye820526.javaeye.com/blog/352457
http://www.javaeye.com/topic/333676
我正在看,还没有结果。
----
找到个在线打开word的免费插件weboffices。下载地址是:http://www.dianju.cn/p/weboffice/
控件weboffice_v6.0.4.2.cab下载地址是http://www.dianju.cn/p/weboffice/file/weboffice_v6.0.4.2.cab#version=6,0,4,2
------------------------
嘿嘿,终于解决了,借助于jacob.jar操作offices先把文件另存为htm文件再把htm文件流输出到页面就可以了。
http://hi.baidu.com/seejava/blog/item/cf56c2a2a56c72a1caefd0e2.html
客户要求上传的doc和xls文件不能让人下载,只能看。直接用浏览器请求文件总会有个下栽提示,最后想到将如果将doc转成HTML不就OK 了吗?思路有了。google一下还真让我找到了转换之法。哈哈。
此例演示在jdk6下将word文件和excel文件转成html文件。
1.首先需要jacob包。可以从http://danadler.com/jacob/上取的,不过我这里是从上http://downloads.sourceforge.net/project/jacob-project/jacob-project/1.9.1/jacob_1.9.1.zip下来的最新版本1.9.1。
2.解压得到两个文件jacob.jar(直接放到classpath下去就行了),还有一个jacob.dll放到 system32中就OK了。
3.传说如果是win2003还需要安装一个东西。http://www.microsoft.com/downloads/details.aspx?familyid=200B2FD9-AE1A-4A14-984D-389C36F85647&displaylang=en&displaylang=en
不过我的是xp,不需要。
演示代码如下:
package com.hz.util;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import com.hz.dao.NoticeDAO;
import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;
public class Jacob2Html
{
private static final Log log = LogFactory.getLog(Jacob2Html.class);
/**
* PowerPoint转成HTML
* @param pptPath PowerPoint文件全路径
* @param htmlfile 转换后HTML存放路径
*/
public static void pptToHtml(String pptPath, String htmlPath)
{
ActiveXComponent offCom = new ActiveXComponent("PowerPoint.Application");
try
{
offCom.setProperty("Visible", new Variant(true));
Dispatch excels = offCom.getProperty("Presentations").toDispatch();
Dispatch excel = Dispatch.invoke(excels,
"Open",Dispatch.Method, new Object[] { pptPath, new Variant(false), new Variant(false) }, new int[1]).toDispatch();
Dispatch.invoke(excel, "SaveAs", Dispatch.Method, new Object[] {
htmlPath, new Variant(12) }, new int[1]);
Variant f = new Variant(false);
Dispatch.call(excel, "Close");
}
catch (Exception e)
{
e.printStackTrace();
}
finally
{
offCom.invoke("Quit", new Variant[] {}); ComThread.Release();
}
}
/**
* WORD转成HTML
* @param wordPath WORD文件全路径
* @param htmlPath 生成的HTML存放路径
*/
public static void wordToHtml(String wordPath, String htmlPath)
{
ActiveXComponent offCom = new ActiveXComponent("Word.Application");
try
{
offCom.setProperty("Visible", new Variant(false));
Dispatch wordDis = offCom.getProperty("Documents").toDispatch();
Dispatch doc = Dispatch.invoke(wordDis,
"Open", Dispatch.Method, new Object[] { wordPath, new Variant(false),
new Variant(true) }, new int[1]).toDispatch();
Dispatch.invoke(doc, "SaveAs", Dispatch.Method, new Object[] {
htmlPath, new Variant(8) }, new int[1]);
Variant f = new Variant(false);
Dispatch.call(doc, "Close", f);
}
catch (Exception e)
{
e.printStackTrace();
}
finally
{
offCom.invoke("Quit", new Variant[] {});
}
}
/**
* EXCEL转成HTML
* @param xlsfile EXCEL文件全路径
* @param htmlfile 转换后HTML存放路径
*/
public static void excelToHtml(String excelPath, String htmlPath)
{
ActiveXComponent offCom = new ActiveXComponent("Excel.Application");
try
{
offCom.setProperty("Visible", new Variant(false));
Dispatch excels = offCom.getProperty("Workbooks").toDispatch();
Dispatch excel = Dispatch.invoke(excels,
"Open",Dispatch.Method, new Object[] { excelPath, new Variant(false), new Variant(true) }, new int[1]).toDispatch();
Dispatch.invoke(excel, "SaveAs", Dispatch.Method, new Object[] {
htmlPath, new Variant(44) }, new int[1]);
Variant f = new Variant(false);
Dispatch.call(excel, "Close", f);
}
catch (Exception e)
{
e.printStackTrace();
}
finally
{
offCom.invoke("Quit", new Variant[] {}); ComThread.Release();
}
}
public static void main(String[] args)
{
//excelToHtml("c:/ftc/kk.xls","c:/ftc/kk.html");
//wordToHtml("c:/ftc/gdf.doc","c:/ftc/gdf.html");
pptToHtml("c:/ftc/jj.ppt","c:/ftc/jjh.html");
}
}
----------------------------------
——————————
一句话,jacob生成html放在项目文件夹中然后通过链接打开。
发表评论
-
linux 下载并安装Memcache服务器端
2015-07-25 15:50 737下载并安装Memcache服务器端 服务器端主要是安装memc ... -
spring的jar功能说明及个jar包之间的依赖关系
2015-07-24 14:39 393spring.jar是包含有完整发布的单个jar包,sprin ... -
sping
2015-07-07 09:45 603一、简单的用ApplicationContext做测试的话,获 ... -
大型互联网站解决高并发的常见策略
2015-04-10 14:13 689一个运营的系统在正式 ... -
excel
2014-08-22 10:24 614HSSFSheet sheet = workbook. ... -
调用存储过程
2012-08-23 09:36 944public void queryProce( final i ... -
Lucene_3.0_原理与代码分析.
2011-12-09 17:54 713Lucene_3.0_原理与代码分析 -
池链接
2011-11-03 17:34 7801. 线程池是啥子 一说 ... -
JAVA中的IO流.txt
2011-11-03 17:32 1000JAVA中的IO流是非常重要的知识点,用于文件内容的写入、读取 ... -
quanxian
2011-05-20 16:18 571quanxian -
Restrictions
2011-05-20 11:23 807Restrictions dev.firnow.com ... -
权限设计
2011-05-20 11:21 693权限设计权限设计 -
struts 跳转 action
2011-05-20 11:20 754<result name="showList& ... -
java
2011-05-11 23:04 562大点javaeye -
md5 加密
2011-05-06 15:56 684md5 加密 -
java 导出 excel
2011-05-04 21:49 1036java导出Excel例举方式 方法一:导出Excel数据 ... -
java 读取 Excel
2011-05-02 15:44 672private void initMachine() thro ...
相关推荐
“dsoframer 浏览器控件完全操作免费-在线打开word”这个标题揭示了我们讨论的核心技术——dsoframer,它是一个浏览器控件,能够实现用户在网页环境中免费地完全操作Office文档,特别是Word文件。这里的“完全操作”...
本文将详细讲解如何使用.NET代码实现在浏览器中在线打开Word文档。 首先,我们需要了解一个关键的技术:Microsoft Office Interop。这是.NET Framework提供的一组接口,用于与Microsoft Office应用程序(如Word)...
标题中的“在线打开word、Excel.自动安装cab插件【制作教程】”表明这是一个关于如何在Web环境中使用Microsoft Office(Word和Excel)并自动化安装 CAB( Cabinet)插件的教程。CAB文件是Windows操作系统中用于分发...
string filePath = Server.MapPath("~") + @"\DemoFiles\Test.txt"; TextFilePreview.Preview(this, filePath);
在C#编程环境中,操作Microsoft Word文档是一项常见的任务,包括打开Word文档以及读取文档内容。这涉及到.NET Framework中的Microsoft.Office.Interop.Word库,它允许C#应用程序与Word进行交互。以下是一些关于如何...
Java实现在线预览word/excel/ppt,在网上找了很多的方式,有将word/excel/ppt转换为HTML的,还有转swf的,但是转swf的偏多,转HTML有些可是不好,转swf的效果好一些,但是在转excel的时候,默认是已A4的纸张来进行...
Java在线打开word文档并强制留痕的方法 在OA系统中,文档流转过程中经常需要留痕迹,以便于后续处理文档的专员清晰地参考。例如,领导审批的流程中,领导审批完成后,需要将审批痕迹强制保留下来。那么,在Java在线...
2. **打开Word文档** 要启动并打开一个Word文档,首先创建一个`Word.Application`对象,然后调用其`Documents.Open`方法。下面是一个简单的示例: ```csharp using Microsoft.Office.Interop.Word; // 创建...
4. **打开Word文档**:使用`Documents.Open`方法可以打开现有的Word文档,或者创建新文档: ```pb doc = wordApp.Documents.Open("C:\path\to\document.docx") ``` 或者创建新文档: ```pb doc = wordApp....
在Android平台上,调用系统内置的应用程序来打开Word文档是一个常见的需求。这涉及到Android的Intent机制,通过Intent我们可以启动各种系统服务或者应用,包括查看、编辑文档等。下面将详细介绍如何实现这一功能。 ...
labview调用API方式打开Word文档,通用性强适合拿来直接使用
`WordExportUtil`是Easypoi提供的工具类,`exportWord07`方法会根据模板和数据生成指定版本的Word文档(这里是Word2007及更高版本的`.docx`格式)。 生成的Word文档会被保存到临时文件目录中,接着通过`...
在日常工作中,Microsoft Word是一款非常重要的文字处理软件,但有时候我们可能会遇到各种打开错误的问题,如文档损坏、程序崩溃或无法启动等。本教程将详细讲解如何“一键解决Word打开错误问题”,帮助用户快速恢复...
1. **打开Word文档**: MFC中打开Word文档通常通过COM(Component Object Model)接口来实现,具体涉及Microsoft Office的自动化。首先,我们需要包含必要的头文件如`#import`指令导入`msword.olb`库,然后创建`...
在Android平台上,打开Word文档通常涉及两种主要方法:一种是通过集成特定的库来解析文件,另一种是利用系统 Intent 系统来调用已安装的应用程序进行打开。下面将详细介绍这两种方法。 首先,我们来看看使用第三方...
首先,当我们遇到“打开Word报错”的问题时,最直观的提示可能来自错误消息本身。错误消息通常会包含一些关键信息,例如错误代码,这可以帮助我们识别问题的根源。然而,如果错误信息不明确或者无法理解,我们可以...
在VB(Visual Basic)编程中,有时候我们需要在应用程序中集成打开和查看Word文档的功能,而无需依赖Microsoft Word的完整实例。在这种情况下,可以利用WebBrowser控件作为一个容器来实现这一目标。WebBrowser控件...
本主题聚焦于如何利用C++来自动化处理Microsoft Word文档,特别是自动打开Word文档并进行文字添加的功能。这个过程涉及到几个关键的知识点,包括文件操作、进程控制以及可能的COM(Component Object Model)接口的...
本话题聚焦于使用C#编程语言实现打开Word文档并定位到特定书签的功能,这是一个非常实用的技术点,尤其适用于帮助系统或者文档查阅场景。在描述中提到了一个具体的例子:当用户点击页面上的“帮助”按钮时,程序会...