我有100個文件名爲「1.exe」,「2.exe」,「3.exe」,...,「100.exe」 我想從用戶作爲1,2,3,...或100並運行相應的exe文件。 例如,如果用戶輸入45,我將運行文件「45.exe」 我不想使用ifs或開關。 任何人都可以幫助我。輸入並匹配相應的文件
回答
Runtime.getRuntime().exec(input + ".exe").waitFor();
會工作。
我的Java是有些生疏了,原諒我,但是這應該給你的想法:
形成以做這樣的字符串:
String number = "45"; // or whatever user inputs
String suffix = ".exe";
String file = number + suffix;
然後,一旦你有字符串,用它來運行進程:
Runtime rt = Runtime.getRuntime();
Process p = rt.exec(file);
而當你使用過程中完成的,銷燬它:
p.destroy();
如果你可以使用StringBuilder,請不要使用StringBuffer http://vanillajava.blogspot.co.uk/2012/08/java-memes-which-refuse-to-die.html –
如果你不寫一個循環而是做一個明顯的補充,編譯器會爲你優化它 - 無論如何'''沒問題,並且會自動從潛在的未來改進中受益。 –
再一次,我的java有點生疏。感謝您的反饋!! –
// getInputFromUser() is your function with validation
String processName = getInputFromUser()+".exe";
Runtime.getRuntime().exec(processName);
如果他們在同一個文件夾,您可以使用也可以使用java.nio.file.Paths來以解決這些問題:如果你想等待它
Runtime.getRuntime().exec(Paths.get(getNumberInput() + ".exe").toString());
- 1. PHP:匹配相應的文件名
- 2. Perl輸入文件字符串匹配
- 3. 算法將一個輸入文件與給定數量的文件相匹配
- 4. C++。如何從文件中讀取並與輸入匹配
- 5. 如何按文件大小匹配文件並進行相應的重命名?
- 6. Excel-查找單元格值是否匹配並輸入匹配單元格的相應數據?
- 7. Strcmp用戶輸入和文件輸入不匹配
- 8. grep並替換相同文件中的匹配文本
- 9. awk中的字符串匹配文本文件的輸入
- 10. ANTLR4:不匹配的輸入
- 11. ANTLR4:不匹配的輸入
- 12. 匹配用戶輸入並通過數字計算輸入C++
- 13. 讀取輸入文件,匹配並刪除數據並將剩餘行寫入新文件
- 14. 創建基於列匹配兩個輸入文件的輸出文件
- 15. Python:輸入和輸出文件名匹配
- 16. 比較兩個文本文件並保存輸出匹配
- 17. bash - 通過名稱和順序讀取多個輸入文件並創建匹配的輸出文件
- 18. 兩個文件並提取匹配的單詞匹配一個
- 19. Java輸入不匹配從文本文件中讀取
- 20. 將輸入組的寬度與引導程序中的輸入相匹配
- 21. Python的文件匹配,並附加
- 22. 當輸入不存在的文件匹配時,ido會凍結
- 23. 從特定列匹配輸入文件的CSV中刪除行
- 24. 將用戶輸入與Python中的文件記錄匹配
- 25. Java輸入不匹配異常與專門的txt文件
- 26. 與文件無法正常工作的輸入匹配 - Java
- 27. 匹配兩個文件的第一列中的值並將匹配的行加入到一個新文件中
- 28. 寫入相同的輸入Excel文件
- 29. 輸入模式匹配java
- 30. 未輸入模板匹配
爲什麼你不想使用開關盒 –
這是非常小的信息,因此很難回答這個問題。但是,如何使用地圖? – Thomas
爲什麼你有100個exe的編號?我假設你不希望用戶能夠運行其他程序? –