2011-08-18 108 views
1

我正在製作一個Java程序並想打開一個text(notepad)文件,我保存在我的Java程序的src文件夾中,我試圖通過下面的代碼來做到這一點,但它給錯誤。 「在類型Runtime方法exec(String)不適用於參數 (InputStream),有什麼建議?謝謝從Java的src文件夾打開文本文件時出錯

Runtime runtime = Runtime.getRuntime(); 
InputStream lic = this.getClass().getClassLoader().getResourceAsStream("MyFile.txt"); 
Process process = runtime.exec(lic); 
+1

你是想從字面上打開記事本,還是要將文件讀入程序? – Jeremy

+0

@Jeremy Heiler我在「MyFile.txt」中保存了一些文本,並且想要打開該文本文件(帶有文本) – Rizwan

回答

1

您不能執行輸入流,它只是一個字節集合,而不是文件。

您應該將此文件存儲在項目內的其他位置(如資源文件夾)並使用該路徑打開文件。下面是它會是什麼樣子:

File file = new File("resources/my-file.txt"); 
String[] command = { "notepad.exe", file.getAbsolutePath() }; 
Runtime.getRuntime().exec(command); 
+0

,它的工作。謝謝Alot :-) – Rizwan

0

我想這是你想要做什麼:

ProcessBuilder pb = new ProcessBuilder("notepad", "/path/to/text-file"); 
Process process = pb.start(); 

ProcessBuilder的Javadoc。