【发布时间】:2012-08-30 01:05:15
【问题描述】:
我有引号中的文件路径,像这样带有空格的文件夹名称,至少附加了两个不同长度和值的命令行参数:
"C:\My Program\Sample Folder\SubFolder2\MyApp1.exe" -parameter13XY1 -parameter101XZ2
我希望只有不带引号且不带命令行参数的文件名:
C:\My Program\Sample Folder\SubFolder2\MyApp1.exe
我会在框架中搜索诸如“StripQuotes”和“StripCommandLineArgs”之类的函数,但我没有找到类似的东西,因为框架几乎所有东西都缺少什么将需要。 至于引号它可能会做一个“替换”,但命令行参数不能这样排序。文件名还包含空格,因此无法使用 Split(),因为它会删除文件名的一部分。
最后,我希望只有不带引号和命令行参数的文件名。请注意,文件名还可以包含空格和连字符以及它们的两种组合,如下所示:
“C:\My Program - Win64\Sample-Folder\Sub -Folder3\My App55-.exe -parameter1 -parameter2 para3”
在这种情况下,我不知道如何仅找出有效路径。还可以附加五个命令行参数,甚至 10 个。
【问题讨论】:
-
可以使用
replace和split字符串方法。 -
你确定你的最后一个例子是有效的吗?我以前从未见过引号内的命令行参数。
标签: c# command-line filenames quotes strip