我試圖使用運行系統打開文件。這類似於打開Windows命令提示符,然後執行該命令。使用Java應用程序打開文件
下面是代碼:
import java.io.IOException;
public class OpenFile {
public static void main(String[] args) {
String fileName = "E:\\Myfile.txt";
try {
Runtime rt = Runtime.getRuntime();
rt.exec(new String[]{"cmd.exe", "/c", "start"});
rt.exec(new String[]{fileName});
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
}
命令提示被成功打開。但文件Myfile.txt未打開。我在控制檯中得到以下錯誤:
java.io.IOException: CreateProcess: E:\Myfile.txt error=193
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:81)
at java.lang.ProcessImpl.start(ProcessImpl.java:30)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:451)
at java.lang.Runtime.exec(Runtime.java:591)
at java.lang.Runtime.exec(Runtime.java:464)
at OpenFile.main(OpenFile.java:10)
如何成功打開文件?
我不能把手指放在它上面(從來沒有真正使用過類似的東西),但如果我沒有弄錯,有一種方法可以在基於Windows和其他基於平臺的計算機上使用。 我建議你選擇的是, 反正不是限制你的應用程序只是.exe文件,這可能會有所幫助: http://about-java-programming.blogspot.be/2007/02/javaioioexception -createprocess.html – Stultuske
@Stultuske你正在考慮[java.awt.Desktop#open()](http://docs.oracle.com/javase/7/docs/api/java/awt/Desktop.html#open (java.io.File)) –