我有字符串,它包含從PHP文件返回的xml節點。 這就像將字符串轉換爲xml節點
<a>1</a><b>0</b><c>4</c>..............
現在我需要找出值的每個節點都,即A,B,C ...... 而這個字符串加載到XmlDocument的我得到錯誤,如「有多重根元素「。
此
我有字符串,它包含從PHP文件返回的xml節點。 這就像將字符串轉換爲xml節點
<a>1</a><b>0</b><c>4</c>..............
現在我需要找出值的每個節點都,即A,B,C ...... 而這個字符串加載到XmlDocument的我得到錯誤,如「有多重根元素「。
此
well-formed XML的基本規則之一是它具有單個根節點。隨着你的榜樣,你有多個根:
<a>1</a>
<b>0</b>
<c>4</c>
爲了使其充分形成,你將不得不作出這些元素單根的孩子:
<root>
<a>1</a>
<b>0</b>
<c>4</c>
</root>
的XML文檔不是很好-formed並不是一個真正的XML文檔,你會發現沒有XML解析器能夠讀取它!
任何溶液包裝在一個根元素。 E.g:
從<a>1</a><b>2</b>...
爲<root><a>1</a><b>2</b>...</root>
然後計算正常。
這是因爲每個元素都在同一水平。需要有一個包含它們的「根」。將它們包裝在任意節點中,例如<root>...</root>
,然後將新字符串加載到xmlDocument。
這看起來像XML,但它不是有效的XML。在XML中,您有一個包含所有其他元素的根元素。
所以,如果你有str
該字符串,這樣做:
str = String.Format("<root>{0}</root>", str);