【问题标题】:Close program by opened by her file通过她的文件打开关闭程序
【发布时间】:2019-05-14 18:32:31
【问题描述】:

如何通过由她的文件打开来以编程方式 (Java) 关闭进程。例如,我有一些名为 notes.txt 的文件。他以编程方式打开(使用 Java,但问我使用 CMD)而不是 txt-files 的默认程序,在我的情况下它是 Notepad,因此它正在创建新进程命名记事本:

如您所见,我还有一个进程记事本,其中有一个打开的文件data.txt。

如何使用 CMDnotes.txt 以编程方式完成处理 Notepad 以便 data.txt 保留/em> 或者一些 Java 工具。

怎么做?也许我应该得到默认程序来打开 txt-files(以及其他扩展),然后对它们做一些事情......
一般来说,我需要任何想法......

提前致谢。问候...

【问题讨论】:

  • 每个进程都有一个关联的ID,你可以用ID杀死那个进程。
  • 如果我只知道文件的路径,如何以编程方式(使用 Java)获取 ID。

标签: java cmd process


【解决方案1】:

既然你知道窗口标题,例如:

data.txt - Notepad
notes.txt - Notepad

然后您可以使用 Window 的 taskkill 实用程序:

try {
    Runtime rt = Runtime.getRuntime();
    rt.exec("taskkill /F /FI \"WINDOWTITLE eq notes.txt - Notepad\" /T");
} 
catch (IOException | SecurityException | IllegalArgumentException ex) {
    ex.printStackTrace();
}

最终,如果 notes.txtdata.txt 处于打开状态,则 notes.txt 将被关闭。

【讨论】:

  • 不错的选择,但不是通用的。并非所有程序的标题栏中都有打开文件的名称。正如我已经说过的,在我的程序中只有我必须操作的文件的路径。
猜你喜欢
  • 1970-01-01
  • 2015-06-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-02
  • 1970-01-01
相关资源
最近更新 更多