繁体   English   中英

从字符串中提取XML数据

[英]Extract XML Data from String

我有一个上传文件(XML类型)时生成的输入流。 我需要后面代码中的XML数据。 我通过使用字符串中的xml数据

 StreamReader stream = new StreamReader(Request.InputStream);
 string x = stream.ReadToEnd();

字符串开头还包含以下数据

------WebKitFormBoundary8na5dBbHc4ydfxVU
Content-Disposition: form-data; name="MyFile"; filename="Test 123.vfc"
Content-Type: application/octet-stream

在字符串的末尾

------WebKitFormBoundary8na5dBbHc4ydfxVU--

我不需要此数据。 请帮助我获取正确的XML字符串。

首先,您可以从字符串中删除前三行和最后一行。

int n = 3;
string[] lines = str.Split(Environment.NewLine.ToCharArray()).Skip(n).ToArray();
string output = string.Join(Environment.NewLine, lines);
output = output.Remove(str.LastIndexOf(Environment.NewLine));

在您的XML字符串中,如果您没有根节点,则按如下所示添加它。

   string xmlTxt  = "<ROOT>" + xmlString + "</ROOT>";

如果您有根节点,请跳过上面的内容。 对于格式正确的XML字符串,您可以使用以下代码

   XmlDocument xmlDocument = new XmlDocument();
   xmlDocument.InnerXml = xmlTxt;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM