【发布时间】:2019-03-20 10:46:33
【问题描述】:
我一定错过了什么。我正在下载一个文件并想将其保存为它的类型。我知道这应该以 jpg 结尾,在这种情况下。
当我将字节数组保存到文件中时,我得到以下信息:
--145ae7dc-e075-478c-8063-eeb765e0e15a
Content-Type: image/jpeg;
Content-Length: 41946
MIME-Version: 1.0
ÿØÿî Adobe d ÿÃ R G B ÿÄ ÿÚ R G B úÿ ×þ¿Úív¡
代码:
WebClient webClient = new WebClient();
webClient.Headers["Accept"] = textBoxMimeType.Text;
var uri = new Uri(url);
using (Stream webStream = webClient.OpenRead(uri))
{
using (FileStream fileStream = new FileStream(outputFile, FileMode.Create))
{
var buffer = new byte[32768];
int bytesRead;
Int64 bytesReadComplete = 0;
Int64 bytesTotal = Convert.ToInt64(webClient.ResponseHeaders["Content-Length"]);
while ((bytesRead = webStream.Read(buffer, 0, buffer.Length)) > 0)
{
bytesReadComplete += bytesRead;
fileStream.Write(buffer, 0, bytesRead);
}
}
}
我使用上面的,因为我可能有一个非常大的文件。
另一个文件是“application/octet-stream”...
我也希望能够下载其他 mime 类型。
如何去掉 MIME 标头并保存二进制数据?
我尝试过 MimeKit,但它无法解析正文。
谢谢
【问题讨论】:
标签: c# mime-types mime