2013-05-20 26 views
1

我將XML輸出存儲到String並再次將此字符串轉換爲XML .I成功將XML輸出轉換爲字符串,但是我再次遇到了將字符串轉換爲XML的問題。使用.Net將字符串轉換爲XML

示例代碼:

webservice.Service1 objService1 = new webservice.Service1(); 
    String s = objService1.HelloWorld(); //Convert XML output into String 
    XmlDocument xd = new XmlDocument(); 
    xd.LoadXML(s); 

我用LoadXML()方法,但我得到的錯誤

Data at the root level is invalid. Line 1 position 1. 

它的感激,如果任何機構給予正確的代碼字符串轉換爲XML在C#。 謝謝

+1

請顯示's'的值 - 它很有可能不是XML。 –

+0

放入來自'HelloWorld()'方法的字符串響應。 –

回答

5

您應該使用XDocumentXDocument優於XMLDocument。它非常高效,簡單易用。

您的代碼:

webservice.Service1 objService1 = new webservice.Service1(); 
    String s = objService1.HelloWorld(); //Convert XML output into String 
    XmlDocument xd = new XmlDocument(); 
    xd.LoadXml(s); 

解決方案:

XDocument xd = XDocument.Parse(s); 
+0

目前還不清楚爲什麼使用不同的XML解析器會以某種方式使某些文本有效的XML(如果另一個解析器無法識別它)。此外,「謝謝你的筆記」是沒有必要的... –

1
 XmlDocument xd = new XmlDocument(); 
     xd.LoadXml("<root>123</root>"); 

它的工作原理。 您應該打印s值並檢查它是一個有效的xml字符串。