java - 如何在Windows中获取扩展的默认应用程序[Java]

标签 java windows runtime exec

我正在尝试使用

Runtime.getRuntime().exec("Here_I_am.txt");

但是收到错误消息,指出 Here_I_am.txt 不是 Win32 应用程序。

所以,我应该知道如果用户单击 .extension 文件,将执行哪个程序。
就像默认情况下 txt 一样,它将是 Notepad.exe
那么 - 我怎样才能获得这些信息?

附注
我确信这个应用程序不会在 Linux 上使用。

最佳答案

您必须通过命令 shell 调用它:

Runtime.getRuntime().exec("cmd /c Here_I_am.txt");

关于java - 如何在Windows中获取扩展的默认应用程序[Java],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34034818/

相关文章:

java - 使用 CompletableFuture 时如何避免编译器警告关闭 OutputStream?

c - 在 Windows 7 上使用 Turbo C

java-如何在运行时参数包含 "<"和 ">"字符的 Windows 命令行中运行 JAR 文件

windows - 使用批处理文件打开 Internet 选项,打开连接选项卡,按确定

performance - 这两个循环之间的运行时间是否存在差异,是否存在异常?

java - 关于 Java 8 函数式接口(interface)的问题

java - 更新 INI/属性文件

java - 从 Swing 中的条形码扫描仪读取

Java -Xms 和 -Xmx 测试

excel - Vba 'on error' 处理程序似乎不起作用