我從Web服務獲取XML。這裏是XML的樣子:XML錯誤:有多個根元素
<parent>
<child>
Text
</child>
</parent>
<parent>
<child>
<grandchild>
Text
</grandchild>
<grandchild>
Text
</grandchild>
</child>
<child>
Text
</child>
</parent>
etc.
這裏是我的C#代碼:
StringBuilder output = new StringBuilder();
// Create an XmlReader
using (XmlReader reader = XmlReader.Create(new StringReader([email protected])))
{
XmlWriterSettings ws = new XmlWriterSettings();
//ws.Indent = true;
using (XmlWriter writer = XmlWriter.Create(output, ws))
{
// Parse the file and display each of the nodes.
while (reader.Read())
{
switch (reader.NodeType)
{
case XmlNodeType.Element:
writer.WriteStartElement(reader.Name);
break;
case XmlNodeType.Text:
writer.WriteString(reader.Value);
break;
case XmlNodeType.XmlDeclaration:
case XmlNodeType.ProcessingInstruction:
writer.WriteProcessingInstruction(reader.Name, reader.Value);
break;
case XmlNodeType.Comment:
writer.WriteComment(reader.Value);
break;
case XmlNodeType.EndElement:
writer.WriteFullEndElement();
break;
}
}
}
}
我認爲錯誤是第二父元素拋出。我怎樣才能避免這個錯誤?任何幫助是極大的讚賞。
嗯,首先,你從Web服務獲得的東西*不是* XML,因爲它有兩個根元素,這是什麼導致你的問題。你如何從Web服務中獲得它?你是否在某種程度上不小心修剪了真正的根部元素? – 2011-02-18 15:10:41
@Matt - 不,我從Web服務逐字返回響應。 – divided 2011-02-18 15:20:21