java - 下载exe文件并运行

标签 java eclipse networking exe

我一直在尝试让我可以从网上下载 .exe 文件,读取它,并将其写入本地文件,然后执行。

URL url = new URL("http://www.ddlands.com/downloads/Calc.exe");
    URLConnection c = url.openConnection();
    BufferedReader br = new BufferedReader(new InputStreamReader(c.getInputStream()));
    String line = "";
    File file = new File("analbread"+".exe");
    BufferedWriter bw = new BufferedWriter(new FileWriter(file));
    while((line = br.readLine()) != null){
        bw.write(line + "\n");
    }
    br.close();
    bw.close();
    Process r = Runtime.getRuntime().exec("analbread" + ".exe");
    System.out.println(r.toString());
    System.out.println("WORKS!");

虽然我知道由于使用 BufferedWriter 而这不起作用,并且我不确定它是否运行 exe。

最佳答案

对于下载部分,您需要使用二进制读/写。有关更多详细信息,请参阅此:Working unbuffered streams .

对于执行部分,问题在于 Runtime.exec()-method无法启动您的可执行文件。

至少在 Linux 下(我无法在 Windows 上测试),您需要可执行文件的完整路径(或者当文件位于与您的应用程序相同的目录)以便能够执行它。

仅给出该命令适用于属于系统一部分的可执行文件 PATH-variable .

关于java - 下载exe文件并运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13536963/

相关文章:

eclipse - Eclipse Kepler在64位ubuntu上卡住

java - 调用等待 HashMap 更改的函数

Android - 没有 Internet 时缓存/调用网络调用的库

java - 对多个按钮使用一种 JavaFX 方法

python TCP客户端无法连接到我的TCP服务器

java - POJO 中的集合

java - 在 Java 中覆盖访问器

java - 实例化引用新教师的 Employee 变量

java - 这是检查用户对数据层的访问权限的良好设计吗?

java - JBoss 未在 Eclipse Luna (Ubuntu 14) 上运行