j'ai xml ce que j'obtiens comme tableau d'octets, quelle est la meilleure façon d'en extraire la chaîne xml? J'essayais d'utiliser xmltextreader et memorystream mais sans succès ..
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);
Cela suppose que vos données ont un codage UTF8, ce qui est habituel pour XML. buffer
voici également le tableau d'octets.
En supposant que votre xml est dans l'encodage 'UTF8' par défaut., Vous pourriez faire quelque chose comme ceci;
string xml = System.Text.UTF8Encoding.UTF8.GetString(bytes);
System.Xml.XmlDocument xdoc = new System.Xml.XmlDocument().LoadXml(xml);
Ou ca;
XmlDocument doc = new XmlDocument();
using (MemoryStream ms = new MemoryStream(buffer))
{
doc.Load(ms);
}
Sur la base de l'encodage, vous pouvez faire
string xmlString = System.Text.UTF8Encoding.UTF8.GetString(bytes);
et utilisez la chaîne
XmlTextReader reader = new XmlTextReader(new StringReader(xmlString));
Jetez un œil à la classe System.Text.Encoding.UTF8 . Il devrait vous permettre de convertir votre tableau d'octets en une chaîne UTF8.