1、下载jawin的jar包
2、将jawin.jar拷贝到<%java_home%>\jre\lib\ext中
3、将jawin.dll拷贝到system32文件夹中
4、将jawin.jar拷贝到webinf\lib中
5、代码如下:
package com;
import java.util.Scanner;
import org.jawin.DispatchPtr;
import org.jawin.win32.Ole32;
public class WordToHtml_jawin {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
System.out.println("输入文档路径:");
//输入路径后以‘n’来判断是否结束输入
String content = "";
while (input.hasNext()) {
String s = input.next();
if ("n".equals(s)) {
break;
}
content += s;
}
System.out.println("content:"+content);
if (content.trim().length() < 1) // 没有给出文件名
{
System.out.println("\n===============");
System.out.println("\n没有word文件或其他参数错误!\n");
System.out.println("\n用法:\n\njava Word2Html word文件名");
System.out.println("\n如果文件名中有空格,应使用引号");
System.out.println("\n===============");
return;
}
int iPos = content.lastIndexOf(".");
System.out.println("ipos:"+iPos);
if (iPos < 1) // 文件没有扩展名
{
System.out.println("\n===============");
System.out.println("\n不是word文件!\n");
System.out.println("\n用法:\n\njava Word2Html word文件名");
System.out.println("\n如果文件名中有空格,应使用引号");
System.out.println("\n===============");
return;
}
String fileExtName = content.substring(iPos + 1);
System.out.println("fileExtName:"+fileExtName);
String fileMainName = content.substring(0, iPos);
System.out.println("fileMainName:"+fileMainName);
fileExtName = fileExtName.toLowerCase();
if (!fileExtName.equals("docx") && !fileExtName.equals("doc")) // 不是word文件
{
System.out.println("\n===============");
System.out.println("\n不是word文件!\n");
System.out.println("\n用法:\n\njava Word2Html word文件名");
System.out.println("\n如果文件名中有空格,应使用引号");
System.out.println("\n===============");
return;
}
System.out.println("OK");
try {
Ole32.CoInitialize();
// 初始化
DispatchPtr app = new DispatchPtr("Word.Application");
// 创建word对象
app.put("Visible", false);
// 设置word不可见
DispatchPtr docs = (DispatchPtr) app.get("Documents");
// 取得Documents对象
DispatchPtr doc = (DispatchPtr) docs.invoke("Open", content);
// 打开指定的word文件
doc.invoke("SaveAs", fileMainName + ".html", new Integer(8));
// 另存为HTML文件
app.invoke("quit");
// 关闭word
Ole32.CoUninitialize();
// 释放对象
System.out.println("\n转换完成!");
System.out.println("\n文件名:" + fileMainName + ".html");
} catch (Exception e) {
System.out.println("\n该文件不存在!或者其他错误(如:运行环境问题)!");
}
}
}
分享到:
相关推荐
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...
得到RSA密钥对,产生Signature对象,对用私钥对信息(info)签名,用指定算法产生签名对象,用私钥初始化签名对象,将待签名的数据传送给签名对象(须在初始化之后),用公钥验证签名结果,使用公钥初始化签名对象,用于...
得到RSA密钥对,产生Signature对象,对用私钥对信息(info)签名,用指定算法产生签名对象,用私钥初始化签名对象,将待签名的数据传送给签名对象(须在初始化之后),用公钥验证签名结果,使用公钥初始化签名对象,用于...
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...
J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-OSGi R-OSGi 是一套适用于任意满足 OSGi 架构的分布式通讯组件。它以 jar 的形式发布,部署容易,使用...