天天看點

php根級别上的資料無效,解析XML報錯 根級别上的資料無效。 第 1 行,位置 1

通過接口擷取到傳回的字元串OutStr:

<?xml  version="1.0" encoding="utf-8"?>0-148374645

解析時用

XmlDocument doc = new XmlDocument();

doc.LoadXml(OutStr.Trim());

調試到   doc.LoadXml(OutStr.Trim()); 已報錯。

錯誤内容:根級别上的資料無效。 第 1 行,位置 1。

想問一下問題出在哪裡了?

解決方案

10

string xml = @"

<?xml  version=""1.0"" encoding=""utf-8""?>0-148374645";

XmlDocument doc = new XmlDocument();

doc.LoadXml(xml.Trim());

XElement root = XElement.Parse(xml);//異常

var e = root.Element("Result");

試着在前面加了個換行,異常了,你加個Trim試下,估計有換行吧

10

xml.Trim("\r", "\n").Replace(System.Environment.NewLine, string.Empty)

看你反正也沒系統換行在裡面,直接這樣狠點的

10

string xml = @"

<?xml  version=""1.0"" encoding=""utf-8""?>0-148374645

";

xml = xml.Substring(xml.IndexOf("

Console.WriteLine(xml);

XmlDocument doc = new XmlDocument();

doc.LoadXml(xml);

這個本人用的是你問題裡提供的,這樣子後是可以了,正則替換居然比對不到第一個尖括号之前的東西,神了奇了

CodeBye 版權所有丨如未注明 , 均為原創丨本網站采用BY-NC-SA協定進行授權 , 轉載請注明解析XML報錯 根級别上的資料無效。 第 1 行,位置 1!