`

使用openoffice后关闭进程

 
阅读更多
  在 java中 ,最近使用了openoffice,如果是windows下 ,可以调用bat去启动服务 ,或者注册表的方式让服务器重新启动后就启动openoffice,记得要关闭进程,代码如下:

引用 http://botao900422.blog.51cto.com/4747129/1258901


public class JavaCallOpenoffice {
    /**
     * 将启动程序定义在构造函数中,直接生成该类对象,即可启动openoffice服务
     */
    public JavaCallOpenoffice() {
        Runtime rn = Runtime.getRuntime();
          Process p = null;
          try {
              File file=new File("d:\\openoprenoffice.bat");
              if (false==file.exists()) {
                  System.out.println("。。。。。。。。。。");
                  FileWriter writer = new FileWriter("d:\\openoprenoffice.bat ");
                    writer.write("@echo   off ");
                    writer.write("\r\n ");
                    writer.write("D:");
                    writer.write("\r\n ");
                    //D:\\Program Files\\OpenOffice 4\\program: openoffice的安装路径路径
                    writer.write("cd D:\\Program Files\\OpenOffice 4\\program");
                    writer.write("\r\n ");
                    writer.write("soffice -headless -accept="+"socket,host=127.0.0.1,port=8100;urp;"+" -nofirststartwizard");
                    writer.write("\r\n ");
                    writer.write("@echo   on ");
                    writer.close();
            }
                p = rn.exec("cmd.exe /C d:\\openoprenoffice.bat");
            }
            catch (Exception e1) {
                   e1.printStackTrace();
            }
    }
}


public class DistorySoffice {
    private Process process=null;
    /**
     * 构造方法,实现关闭soffice进程
     */
    public DistorySoffice() {
        try {
            //显示进程
            process=Runtime.getRuntime().exec("tasklist");
            Scanner in=new Scanner(process.getInputStream());
            while (in.hasNextLine()) {
                String processString=in.nextLine();
                if (processString.contains("soffice.exe")) {
                    //关闭soffice进程的命令
                    String cmd="taskkill /f /im soffice.exe";
                    process=Runtime.getRuntime().exec(cmd);
                    System.out.println("openoffice正常关闭.......");
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}



分享到:
评论

相关推荐

    Java用OpenOffice将office转换为PDF

    - 为了提高性能,可以考虑使用OpenOffice的多进程模式,每个进程处理不同的转换任务。 - 如果你的系统中已经有OpenOffice或LibreOffice,也可以通过修改配置文件,让JODConverter直接调用系统已有的服务,避免额外...

    java使用openoffice转换pdf和html文件

    1. unoil-3.0.1.jar:Uno接口库,它是OpenOffice与Java之间通信的桥梁,提供了一种方式让Java应用程序能够控制OpenOffice的进程。 2. xstream-1.3.1.jar:XStream是一个用于Java对象到XML和XML到Java对象序列化的库...

    java操作openoffice所需要的jar包

    - 最后,保存转换后的PDF文件,并关闭与OpenOffice的连接。 6. **绘图操作**: OpenOffice包含一个绘图组件,名为Draw,它支持创建和编辑矢量图形。在Java中,你可以通过OpenOffice API来控制Draw应用程序,实现...

    WordToPdf(openOffice实现,需要单独启动服务

    4. **关闭服务**:完成转换后,记得关闭服务以释放系统资源,可以使用`pkill soffice`或类似命令来结束服务进程。 除了Word转PDF,OpenOffice还支持多种其他格式之间的转换,例如ODT(OpenOffice文档)转DOC,ODS...

    OpenOffice转换成Pdf

    在集成过程中,确保正确配置了OpenOffice的服务端口,以便Java程序能够与OpenOffice进程通信。 在Win7环境下,由于系统默认只支持Office 2007格式,对于更早版本的Office文件(如Office 2003),我们需要依赖转换...

    openoffice实现pdf上传文件预览功能

    OpenOffice服务是后台运行的进程,用于处理文档转换。 步骤2:添加依赖 在你的项目中,你需要引入JODConverter的依赖。如果使用Maven,可以在pom.xml文件中添加以下依赖: ```xml <groupId>...

    OpenOffice转格式开发所需所有Jar包(含jodconverter2.2.2,可转docx)

    jodconverter通过使用OpenOffice的API,将Java应用程序与OpenOffice进程连接起来,从而实现文件的转换操作。 **OpenOffice API**是另一个关键概念,它是OpenOffice软件提供的接口,允许外部程序控制OpenOffice的...

    jodconverter2.2.2 jar包(openoffice转换docx)

    最后,别忘了在完成所有操作后关闭OpenOffice服务,以释放资源。 值得注意的是,确保OpenOffice安装路径正确,并且在运行时能够正常启动。此外,JODConverter 2.2.2可能不支持最新的OpenOffice或LibreOffice版本,...

    openOffice开发指南

    开发指南通过实例演示了如何在监听模式下启动***,如何导入UNO对象,如何建立进程间桥接和连接,以及如何关闭连接。这些内容对于开发需要在不同进程之间进行通信的应用程序尤其重要。 组件上下文(ComponentContext...

    openoffice toPdf

    5. **关闭连接**:转换完成后,别忘了释放资源,关闭与OpenOffice服务器的连接。 在实际应用中,这个工具类可能还需要处理并发转换、错误处理、日志记录等功能,以提高效率和稳定性。例如,如果多个用户同时请求...

    VB export Excel and OpenOffice

    标题“VB export Excel and OpenOffice”表明我们讨论的是如何使用Visual Basic(VB)编程语言来导出数据到Microsoft Excel和OpenOffice的文件格式。在这个场景中,VB将被用来创建自动化脚本或应用程序,以便从...

    OpenOffice ,jcob ,将文档转化为pdf

    5. **保存和关闭**:转换完成后,记得保存转换后的PDF文件,并关闭OpenOffice的文档和连接,释放资源。 6. **进一步转换为SWF**:PDF文档转换为SWF(ShockWave Flash)通常是用于在线展示和分享的目的。这可能需要...

    openOficean实现opffice转换pdf转换的java实例

    加载文档后,我们可以使用OpenOffice的API将文档保存为PDF格式。以下是一个简单的示例: ```java String outputFilePath = "file:///path/to/output.pdf"; DispatchHelper.execute(textDoc, ...

    OpenOffice转换文档java支持库(jurt、juh、ridl、unoil、jodconverter-core、commons-io)

    JURT包含必要的类和方法,使得Java程序能够启动、控制和关闭OpenOffice进程,并且创建Uno服务对象。 2. **juh.jar**:Java Uno Helper (JUH) 库提供了对Uno接口的进一步支持,包含了一些基本的Uno服务和工具类,如 ...

    jodconverter3.0源代码

    jodconverter利用了OpenOffice的API,通过启动一个名为"soffice"的服务进程,与OpenOffice进行通信,从而实现文档的转换。这一过程涉及到多个关键组件,包括文档的读取、解析、转换以及写入新格式。在源码中,我们...

    Java实现在线预览的示例代码(openOffice实现)

    6. **资源管理**:在完成转换后,记得关闭输入输出流以及 OpenOffice 的连接,以释放系统资源。 以下是示例代码中的关键部分,展示了如何使用 jodconverter 进行转换: ```java // 创建 OpenOffice 连接 ...

    java转换pdf

    5. **关闭连接**:完成转换后,记得关闭与OpenOffice的连接,释放资源。 除了直接使用OpenOffice的API,还有一些其他的Java库可以帮助你实现PDF转换,比如PDFBox、iText等。这些库专注于PDF操作,可以直接从各种...

    jodconverter-core-3.0-beta-4.jar_提供核心api.rar

    使用这个库,开发者无需直接操作OpenOffice进程,只需调用相应的API方法,就能实现转换操作。例如,以下是一段简单的Java代码示例,展示了如何使用`jodconverter`将一个Word文档转换为PDF: ```java import org....

    jodconverter-2.2.2

    // 关闭OpenOffice服务 officeManager.stop(); ``` **性能与优化** 虽然JodConverter依赖OpenOffice进程进行转换,但可能会影响性能,特别是在处理大量文件时。为了提高效率,可以考虑以下优化策略: 1. **多线程...

Global site tag (gtag.js) - Google Analytics