你好我的问题如下: 我与外部程序的startconfig属性FIEL从Java运行:阅读Java属性值与空间成一个变量
# Standardauswahl falls keine PlayerType übergeben wurden
Default = 1
# Liste der gültigen PlayerTypes
PlayerTypes = Human,MCTS,TMM,Random,Value
StartConfig = \"C:\\Program Files\\Java\\jdk1.7.0_13\\bin\\javaw.exe\" -Dlog4j.configuration=file:///C:/Users/djdeejay/git/myGit/com.djdeejay.cowTrade.client.standaloneplayer.application/bin/log4j.xml -Dfile.encoding=Cp1252 -classpath [..... some parameter deleted.....] 0.0-RC1.jar;C:\\Users\\djdeejay\\git\\myGit\\de.thWildau.cowTrade.server\\lib\\slf4j-api-1.5.2.jar;C:\\Users\\djdeejay\\git\\myGit\\de.thWildau.cowTrade.server\\lib\\slf4j-log4j12-1.5.2.jar;C:\\Users\\djdeejay\\git\\myGit\\de.thWildau.cowTrade.server\\lib\\log4j-1.2.16.jar com.djdeejay.cowTrade.client.standaloneplayer.application.RandomPlayerApplication %1 %2 %3
时,按如下我加载性能第一空间后
cmd = this.serverSettings.getPlayerTypeSetting("StartConfig");
@Override
public String getPlayerTypeSetting(String key) {
return this.startPlayerTypeSettingsProp.getProperty(key);
}
的Java切割startconfig:
不能运行程序“”“C:\程序”时,其在双引号或无法运行PROGR上午“” C:\程序“:
我曾试图用‘’几个变种,以逃避等没有给我需要的结果
我如何配置的getProperty读,直到EOL?
欢呼
你确定'getProperty'在这里有问题吗?在执行之前尝试打印'cmd'。 [Properties#load](http://docs.oracle.com/javase/7/docs/api/java/util/Properties.html#load(java.io.Reader))文档说属性*被读取,直到换行符,这样应该没问题。 – mabi
你是对的问题是Runtime.getRuntime()。exec(cmd);我的输出是“C:\ Program Files \ Java \ jdk1.7.0_1%3 \ bin \ javaw.exe”-Dlog4j.configuration = file:/// C:/Users/djdeejay/git/myGit/com.d。 ...我会尝试在它前面的命令 – user2792876
您需要使用[Runtime#exec](http://docs.oracle.com/javase/7/docs/api/java/lang/Runtime.html#exec (java.lang.String []))与'String [] cmdArray''干净地分隔命令和参数。 – mabi