如何执行指定的exe文件

时间:2013-07-23 05:56:43

标签: java

我需要使用java program.like在jdk执行任何文件我们有java,javac ......就像那样

URL url = new URL("http://torrentz.eu/announcelist_116568555");    
    url.openConnection();    
    InputStream reader = url.openStream();    
    FileOutputStream writer = new FileOutputStream("t1.txt");    
    byte[] buffer = new byte[153600];    
    int bytesRead = 0;    
    while ((bytesRead = reader.read(buffer)) > 0)    
    {      
       writer.write(buffer, 0, bytesRead);
       buffer = new byte[153600];
    }
    writer.close();
    reader.close();

   String[] cmd = new String[1];    
  cmd[0]="t1.txt";  
  Process p = Runtime.getRuntime().exec("C:\\Documents and Settings\\INTEL\\My        Documents\\NetBeansProjects\\urldemo\\t1.txt");  

p.destroy();  
}  

}  

这里是错误列表

Exception in thread "main" java.io.IOException: Cannot run program "C:\Documents": CreateProcess error=2, The system cannot find the file specified  
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1041)  
    at java.lang.Runtime.exec(Runtime.java:617)  
    at java.lang.Runtime.exec(Runtime.java:450)  
    at java.lang.Runtime.exec(Runtime.java:347)  
    at urldemo.Urldemo.main(Urldemo.java:58)  
Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified  
    at java.lang.ProcessImpl.create(Native Method)  
    at java.lang.ProcessImpl.<init>(ProcessImpl.java:376)  
    at java.lang.ProcessImpl.start(ProcessImpl.java:136)  
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1022)  

2 个答案:

答案 0 :(得分:2)

一旦克服了路径问题,您将看到无法在Windows上执行文本文件,因为文本文件不是可执行程序。如果您想打开该文件而不是执行它,请使用Desktop类。请参阅示例How to launch the default (native) application for a given file from Java?

File file = new File ("c:/documents and settings/Intel/whatever/file.txt");
Desktop.getDesktop().open(file);

答案 1 :(得分:0)

Process p = Runtime.getRuntime().exec("cmd /c start notepad C:\\Documents and Settings\\INTEL\\My        Documents\\NetBeansProjects\\urldemo\\t1.txt"); 

//您还可以提供其他编辑器而不是记事本