Java-单击按钮时执行bat文件,然后关闭Java窗口

标签 java batch-file

我有一个按钮,我想要的是点击该按钮执行一个bat文件后台,该文件会在一个文件夹中生成一个文件,而Java窗口保留在那里。

但在我的代码中,我需要关闭 Java 窗 Eloquent 能执行 bat 文件。

您能帮我看看我哪里需要修改吗?

我不需要看 bat 屏幕。谢谢!

final JButton importMap = new JButton("Import");

    importMap.addMouseListener(new MouseAdapter() {
        public void mouseClicked(MouseEvent arg1) {

            //String osm = osmFile_path.replaceAll("\\","\\\\");
            System.out.println("You are going to import:"+osmFile_path);
            //Runtime.getRuntime().exec()
            try {
                FileWriter fw2 = new FileWriter("C:\\SUMO\\bin\\OSMTEST.bat");
                fw2.write("@echo off");
                fw2.write("\r\n");
                fw2.write("cmd");
                fw2.write("\r\n");
                fw2.write("set default_dir=C:\\SUMO\\bin");
                fw2.write("\r\n");
                fw2.write("start /b C:\\SUMO\\bin\\netconvert --osm-files="+osmFile_path+" --output-file="+osmnet_file);
                fw2.close();
                Runtime.getRuntime().exec("cmd.exe /C start /b C:\\SUMO\\bin\\OSMTEST.bat");
            } catch(IOException e) {
                e.printStackTrace();
            }
        }
    });

    content.add(importMap);

最佳答案

您不应在 Runtime.getRuntime.exec() 参数中使用 start 参数。它会打开一个新窗口来执行指定的命令。

这应该有效

Runtime.getRuntime().exec("cmd.exe/C C:\\SUMO\\bin\\OSMTEST.bat");

关于Java-单击按钮时执行bat文件,然后关闭Java窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15188037/

相关文章:

dos - 如何在批处理脚本中从控制台返回单个字符而不按 Enter 键?

windows - 使用 "ren"在 cmd 中更改文件名

batch-file - 如何使用批处理将 dll 作为 exe 执行

java - 崩溃 shell 无法通过 ssh 连接

batch-file - 在 CMD/Windows 中计算文本文件的非空行

java - Eclipse, JAR Export正在打包svn文件

java - SAX XML解析添加参数

windows - 如何使用CMD命令查找和删除文件?

当我调用自己实现的搜索方法时,Java BST 程序崩溃

java - 一旦一个对象被取出来更新它的优先级,如何保持一个对象在优先级队列中的优先级?