我有一个上传文件时生成的输入流(XML Type)。我需要代码背后的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字符串。
答案 0 :(得分:0)
首先,您可以删除字符串中的前三行和最后一行。
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;