簡體   English   中英

java:將參數傳遞給Python程序的getRuntime()。exec()

[英]java: getRuntime().exec() passing arguments to a Python program

我試圖將運行和參數傳遞給python程序,並且遇到了麻煩。 這是我現在正在做的事情:

String[] testCases=readIn("C:\\xampp\\htdocs\\development\\"+folder+"\\testCases.txt");
                String arguements="";
                for(int i=0; i<testCases.length; i++)
                {
                    if(i==0)
                    {
                        arguements=testCases[i]+" ";
                    }
                    else
                    {
                    arguements=arguements+testCases[i]+" ";
                }
                command= new String[]{"C:\\Python27\\python.exe","C:\\xampp\\htdocs\\development\\"+fileName, arguements};
Process process=Runtime.getRuntime().exec(command);

我很確定我正確地傳遞了參數。 我是否需要通過某種方式表明它們是我的Python代碼可以使用的參數?

您的說法確實是錯誤的。 您需要在command數組中將每個參數作為字符串傳遞。 例如,

command = new String[arguments.length + 2];
command[0] = "C:\\Python27\\python.exe";
command[1] = "C:\\xampp\\htdocs\\development\\" + fileName;
System.arraycopy(arguments, 0, command, 2, arguments.length);

嘗試打印到達控制台的最終命令,然后在命令行中執行該命令。 您將能夠找到確切的錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM