我正在从应用程序接收XML文件。我必须获取该文件的内容并将其复制粘贴到我自己的xml文件中。我这样做的方法是通过GetBufferedInputStream()
并将其复制到新文件bestelling.xml
我的POST API:
public string Post()
{
var result = "";
if (Request.Content != null)
{
string map = @"D:\bestelApp\bestelApp\Content\bestellingen\ontvangen";
string count = Directory.GetFiles(map, "*.xml").Count().ToString();
string extention = ".xml";
string fileName = "bestelling" + (count != "0" ? count : "") + extention;
string path = map + "//" + fileName;
using (Stream output = File.OpenWrite(path))
{
using (Stream input = HttpContext.Current.Request.GetBufferedInputStream())
{
input.CopyTo(output);
}
}
result = new bestellingenController().ConvertXmlToObj(fileName, path);
}
return result;
}
但是将文件的实体主体复制到我自己的文件中时,它会复制原始文件中存在的副本。
原始文件的内容仅包含xml:
<xml?version=1.0>...</xml>
新文件的内容突然包含一些额外的信息,而在xml之间:
-----------------------8d618bbd8fc0d89
Content-Disposition: form-data; name="file"; filename="14_20180912134640.xml"
Content-Type: application/octet-stream
<xml?version=1.0>...</xml>
-----------------------86d18bbd8fc0d89--
我只想复制xml ...是什么原因造成的,我该如何解决?
编辑 看起来ChristianMurschall的直觉是正确的,因为它 IS 是要添加到正文中的标头。但是如何从内容中排除标题?