c#从字节数组创建xml

时间:2011-04-07 13:47:50

标签: c# xml bytearray

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

4 个答案:

答案 0 :(得分:50)

XmlDocument doc = new XmlDocument();
string xml = Encoding.UTF8.GetString(buffer);
doc.LoadXml(xml);

OR

XmlDocument doc = new XmlDocument();
MemoryStream ms = new MemoryStream(buffer);
doc.Load(ms);

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

答案 1 :(得分:4)

假设你的xml是默认的'UTF8'编码。你可以做这样的事情;

string xml = System.Text.UTF8Encoding.UTF8.GetString(bytes);
System.Xml.XmlDocument xdoc = new System.Xml.XmlDocument().LoadXml(xml);

或者这个;

XmlDocument doc = new XmlDocument();
using (MemoryStream ms = new MemoryStream(buffer))
{
    doc.Load(ms);
}

答案 2 :(得分:2)

基于编码,您可以

string xmlString = System.Text.UTF8Encoding.UTF8.GetString(bytes);

并使用字符串

XmlTextReader reader = new XmlTextReader(new StringReader(xmlString));

答案 3 :(得分:0)

看一下System.Text.Encoding.UTF8课程。它应该让你将你的字节数组转换为UTF8字符串。