我正在编写一个执行XML操作的命令行可执行文件。我希望能够在命令行中直接将XML字符串作为参数传递,但在处理XML属性中使用的双引号(")时遇到困难,我尝试使用转义字符(^"),但似乎不起作用。如何格式化参数才能正确传入?
下面是一个到目前为止还不起作用的例子:
"<?xml version=^"1.0^" encoding=^"UTF-8^"?><sbml xmlns=^"http://www.sbml.org/sbml/level2/version4^" level=^"2^" version=^"4^"><model metaid=^"_case00001^" id=^"case00001^" name=^"case00001^"></model></sbml>"
<?xml version="1.0" encoding="UTF-8"?><sbml xmlns="http://www.sbml.org/sbml/level2/version4" level="2" version="4"><model metaid="_case00001" id="case00001" name="case00001"></model></sbml>发布于 2012-04-24 07:00:51
通常,反斜杠用于转义字符串的dbl引号,这与解析xml不同,因此请尝试使用\",或者尽可能用单引号替换它们。
发布于 2012-04-26 23:23:39
尝试不退出qoutes而是'<‘和'>':这适用于我在cmd命令行中的测试:
somecommand.exe "^<?xml version="1.0" encoding="UTF-8"?^>^<sbml xmlns="http://www.sbml.org/sbml/level2/version4" level="2" version="4"^>^<model metaid="_case00001" id="case00001" name="case00001"^>^</model^>^</sbml^>"https://stackoverflow.com/questions/10289385
复制相似问题