销毁在Java中不起作用

J4C3N-14

我创建了一个简单的Java程序来打开excel文件并向其中写入数据,一旦写入数据,我便继续打开文件以查看电子表格:

String[] cmdarray=new String[]{"cmd.exe","/c","C:\\Users\\Jason\\Documents\\*******\\********\\******.xls"}; 
            Runtime runTime = Runtime.getRuntime();
            Process process = runTime.exec(cmdarray);

作为学习曲线的一部分,我然后尝试在10秒后使用以下命令关闭文件:

process.destroy();

但这并没有关闭窗口。谁能指出我要去哪里错了?谢谢你。

private static void OpenExcel() throws IOException {

            //Find the File and open it
            String[] cmdarray=new String[]{"cmd.exe","/c","C:\\Users\\Jason\\Documents\\*********\\*********\\********.xls"}; 
            Runtime runTime = Runtime.getRuntime();
            Process process = runTime.exec(cmdarray);

            try{    
            //Delay
             TimeUnit.SECONDS.sleep(10);

        }catch (InterruptedException e) {
                e.printStackTrace();
                //Handle exception
            }
            //Close Excel
            System.out.println("Closing Excel");
            process.destroy();

            }
 }
阿图尔·马林诺夫斯基(Artur Malinowski)

原因之一可能是著名的JDK错误

这里的根本问题是,与Unix不同,Windows确实维护了进程之间的父子关系。一个过程可以杀死自己的直系子孙,但是除非您做出其他安排来获取信息,否则就不能杀死任何“孙子”,因为它无法找到它们。

您可以尝试直接执行Excel,而不是通过cmd:

Runtime.getRuntime().exec("C:\\full\\path\\to\\excel.exe C:\\file.xls");

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

销毁在Ruby on Rails中不起作用的路径

来自分类Dev

销毁在Ruby on Rails中不起作用的路径

来自分类Dev

销毁 Tk 中的小部件不起作用

来自分类Dev

Rails活动销毁记录不起作用

来自分类Dev

如何刷新或销毁在 tkinter python 画布中创建的框架?

来自分类Dev

Laravel 5.0路由模型绑定在销毁操作中不起作用

来自分类Dev

销毁路径在注释中不起作用,但是我可以创建注释

来自分类Dev

Laravel 5.0路由模型绑定在销毁操作中不起作用

来自分类Dev

销毁路径在注释中不起作用,但是我可以创建注释

来自分类Dev

使用getResourceAsStream在Java中不起作用

来自分类Dev

暂停打印在Java中不起作用

来自分类Dev

JSplitPane中的Java JScrollPane不起作用

来自分类Dev

Sendgrid Java在Maven中不起作用

来自分类Dev

Java Scanner在处理中不起作用

来自分类Dev

Java中的列表不起作用

来自分类Dev

返回语句在Java中不起作用?

来自分类Dev

Java repaint()在调用中不起作用

来自分类Dev

线程在Java Android中不起作用

来自分类Dev

KeyListener在Java中不起作用

来自分类Dev

Java可比在列表中不起作用

来自分类Dev

尝试/捕获在Java中不起作用?

来自分类Dev

Java repaint()在调用中不起作用

来自分类Dev

Sendgrid Java在Maven中不起作用

来自分类Dev

String to Float在Java中不起作用?

来自分类Dev

URL中的Java变量不起作用

来自分类Dev

.equals()在Java中不起作用?

来自分类Dev

while循环在Java中不起作用

来自分类Dev

for循环在Java中不起作用

来自分类Dev

我的KeyPressed在Java中不起作用