我有xml我得到的字节数组,是什么最好的方法来获取xml字符串?我尝试使用xmltextreader和memorystream但没有成功..
答案 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字符串。