0

我正在编写一个执行 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>
4

2 回答 2

1

通常反斜杠用于转义字符串的 dbl 引号,与解析 xml 不同,因此请尝试使用 \",或者尽可能用单引号替换它们。

于 2012-04-23T23:00:50.983 回答
0

尝试不使用 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^>"
于 2012-04-26T15:23:38.783 回答