2

有上面提到的问题,我正在尝试解析一个上面有 xml 的字符串。我正在使用类 XDocument 和 XElement 将 XML 上的信息解析为字典。代码看起来像这样:

XDocument xDoc = XDocument.Parse(xmlString); 
Dictionary<string, string> dic = new Dictionary<string,string>();
foreach(XElement x in xDoc.Root.Descendants())
{
    temp.Add(x.Name.ToString(),x.Value.ToString());
}

**xmlString 是具有 xml 内容的字符串

这通常可以正常工作,除非 xmlString 在标记上有某种特殊字符('>'、'<'、'&')。例如,当出现这样的情况时:

<Content> #include <stdio.h> </Content>

我假设我实现的代码在这种情况下不起作用,因为 C# 会查看他认为应该看到的 XML 标记具有纯文本。基本上,我的问题是我怎样才能设法解析这种包含特殊字符的 XML 有我之前所说的那种?

4

1 回答 1

3

如果我理解正确,您正在尝试解析无效的 xml。

如果可以,我建议您修复生成此 xml 的代码并使其有效。

如果你不能,你需要编写/使用一个函数,它将这些特殊字符转换为它们的编码变体。

于 2012-11-20T23:53:05.783 回答