c#从字节数组创建xml

hs2*_*s2d 26 c# xml bytearray

我有xml我得到的字节数组,最好的方法是从中获取xml字符串?我尝试使用xmltextreader和memorystream但没有成功..

Ali*_*tad 54

XmlDocument doc = new XmlDocument();
string xml = Encoding.UTF8.GetString(buffer);
doc.LoadXml(xml);
Run Code Online (Sandbox Code Playgroud)

要么

XmlDocument doc = new XmlDocument();
MemoryStream ms = new MemoryStream(buffer);
doc.Load(ms);
Run Code Online (Sandbox Code Playgroud)

这假设您的数据具有UTF8编码,这是XML的常用编码.另外buffer这里是字节数组.

  • 很好的答案,虽然MemoryStream是IDisposable所以不要忘记将它包装在一个使用块中!:) (8认同)

fir*_*986 5

假设您的 xml 使用默认的“UTF8”编码,您可以这样做;

string xml = System.Text.UTF8Encoding.UTF8.GetString(bytes);
System.Xml.XmlDocument xdoc = new System.Xml.XmlDocument().LoadXml(xml);
Run Code Online (Sandbox Code Playgroud)

或这个;

XmlDocument doc = new XmlDocument();
using (MemoryStream ms = new MemoryStream(buffer))
{
    doc.Load(ms);
}
Run Code Online (Sandbox Code Playgroud)