[英]Can't run ProcessBuilder
我正在與ProcessBuilder員工一起奮斗! 我想在其中運行實用程序“ nativetoascii”。我可以在命令行上運行它,也可以通過Runtime.exec()正常運行。
我的代碼是:
'
String command = "\"C:\\Program Files (x86)\\Java\\jdk1.6.0_32\\bin\\native2ascii\"";
String encoding = " -encoding ";
String utf8 = "UTF8 ";
String inputFile = "C:\\Users\\joe\\Desktop\\resources\\encoding\\orig.properties ";
String outputFile ="C:\\Users\\joe\\Desktop\\resources\\encoding\\convertedViaProcessBuilder.properties";
List<String> commandArgs = new ArrayList<String>();
commandArgs.add(command);
commandArgs.add(encoding);
commandArgs.add(utf8);
commandArgs.add(inputFile);
commandArgs.add(outputFile);
ProcessBuilder builder = new ProcessBuilder(commandArgs);
Process p = builder.start();
p.waitFor();
我還編寫了代碼來讀取過程的輸出,它說:
Usage: native2ascii [-reverse] [-encoding encoding] [inputfile [outputfile]]
顯然,我在命令及其參數方面做錯了。 誰能告訴我我在做什么錯? 謝謝。
您的第二個參數是" -encoding "
,它將是"-encoding"
。運行命令時,空格很重要。 ;)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.