【发布时间】:2023-03-03 00:53:02
【问题描述】:
我必须将一个命令字符串分块到 params 数组中:
String mystr="myexe.exe param1 param2 param3";
我期待这个结果:
String[] params={"myexe.exe","param1","param2","param3"};
到目前为止一切顺利,我可以简单地使用由空格字符“”分割的字符串。
params 有空格怎么办?如何管理双引号参数?
String mystr="myexe.exe param1 \"param2 with spaces\" param3";
我期待这个结果:
String[] params={"myexe.exe","param1","param2 with spaces","param3"};
【问题讨论】:
-
"params 有空格怎么办?如何管理双引号参数?" => 通过简单地编写代码。不幸的是,SO 不是“请给我写代码”服务。
-
考虑使用命令行解析库 - 无需重新发明轮子。有不少。
-
当您尝试将
param1 "param2 with spaces" param3作为命令行参数时,您的代码中实际得到了哪些参数? -
@khelwood 这是唯一的字符串:
String cmd="param1 \"param2 with spaces\" param3"; -
@Seelenvirtuose 我想知道为什么你的链接答案(当然它解决了我的问题!)不像我的“请给我写代码”。
标签: java split command-line-arguments