c#从字节数组创建xml
我有xml我得到的字节数组,是什么最好的方法来获取xml字符串? 我尝试使用xmltextreader和memorystream但没有成功..
XmlDocument doc = new XmlDocument(); string xml = Encoding.UTF8.GetString(buffer); doc.LoadXml(xml);
要么
XmlDocument doc = new XmlDocument(); MemoryStream ms = new MemoryStream(buffer); doc.Load(ms);
这假设您的数据具有UTF8编码,这是XML的常用编码。 这里的buffer
也是字节数组。
假设你的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); }
基于编码,你可以做到
string xmlString = System.Text.UTF8Encoding.UTF8.GetString(bytes);
并使用字符串
XmlTextReader reader = new XmlTextReader(new StringReader(xmlString));
看一下System.Text.Encoding.UTF8类。 它应该让你将你的字节数组转换为UTF8字符串。