用Java启动外部程序?
问题:在一定时间后自动关闭程序 解决方案:以下是我解决问题的方法(与Ubuntu上的RhythmathBox一起使用):用Java启动外部程序?,java,external-process,audio-player,Java,External Process,Audio Player,问题:在一定时间后自动关闭程序 解决方案:以下是我解决问题的方法(与Ubuntu上的RhythmathBox一起使用): }您可能无法以这种方式启动EXE。我认为这是为了使用默认应用程序打开文件,而不是自己运行应用程序-或者你只是运行Windows安全 您可以使用Java.lang.Process运行带有参数的程序。Desktop.open()不用于运行可执行文件。您只需给它一个“数据文件”(例如mysong.mp3或myvideo.avi),它就会以系统的默认关联打开该文件 如果您想使用Pro
}您可能无法以这种方式启动EXE。我认为这是为了使用默认应用程序打开文件,而不是自己运行应用程序-或者你只是运行Windows安全 您可以使用Java.lang.Process运行带有参数的程序。Desktop.open()不用于运行可执行文件。您只需给它一个“数据文件”(例如mysong.mp3或myvideo.avi),它就会以系统的默认关联打开该文件
如果您想使用ProcessBuilder运行.exe(搜索此网站,最近几天有很多关于ProcessBuilder的问题)我不知道您如何设置电台。但我想我可以告诉你如何打开媒体播放器: 我曾经打电话给一个bat文件更新我的ip地址,它对我来说很好。如果您设法调用了.bat,那么您就可以忘记java,尝试启动播放器并从那里向他发送参数 java应该这样调用.bat:
Runtime.getRuntime().exec("cmd /c start file.bat");
这或多或少是.bat实现的样子:
启动“”%programfiles%\Windows Media Player\wmplayer.exe”
现在,您只需要了解如何将媒体播放器设置为在您想要的默认电台启动。假设您的意思是我只打开一个文本文件,输入该命令,将其保存为bat文件,然后在Java程序中使用它?我想我应该更专注于关闭,而不是试图打开它,因为我可以自己打开它。我只需要在x分钟后终止进程。我将看看eclipse是否给了我.exec()的反向操作,或者可能只是简单地看一下API。谢谢大家的建议!
Runtime.getRuntime().exec("cmd /c start file.bat");