【发布时间】:2010-12-15 04:13:12
【问题描述】:
我不需要编辑任何 XML 文件或任何东西,这仅用于读取和解析。
我希望能够将 XML 文档作为字典处理,例如:username = doc["username"];,但我不知道如何“转换”文档。我也遇到了重复键名的问题,但是可以通过在每个值后面附加 1、2 等来轻松避免这种情况;也可以很容易地进行 for 循环。
这可能吗?将(解析的)XML 文档视为字典?
对梅尔达德的回答:
它不时变化,这取决于用户的要求。如果用户请求x,那么它将是:
<xml>
<test>foo</test>
<bar>123</bar>
<username>foobar</username>
</xml>
但如果他请求y,就会像
<xml>
<ammount>1000</ammount>
<mail>...@...</mail>
<username>foobar</username>
</xml>
最好是这样:
<xml>
<mengde>100</mengde>
<type>3</type>
<mail>foo</mail>
<crypt>bar</crypt>
<username>bar</username>
</xml>"
可以被解析然后以doc["mengde"]等方式访问。
【问题讨论】:
-
XML 文档的结构是什么?
-
您想如何处理子文档?
<doc><x>1</x><foo><a>4</a><b>5</b></foot></doc>中的 doc["foo"] 返回什么?您需要说明您希望如何访问 doc/foo/a 以便我们提供帮助。 -
包含节点的节点将被忽略,我只使用包含文本的节点。在您的示例中:x、a 和 b。
标签: c# xml dictionary parsing