从byte[]打开任意文件类型
本文关键字:任意 文件 类型 byte | 更新日期: 2023-09-27 17:51:12
我有一个应用程序,它允许用户上传证书并将其附加到系统内的一个人。目前它被编写为只接受. pdf文件,但现在客户端希望能够灵活地将任何类型的文档上传到系统中。我已经设置了数据库来保存byte[]文件和文件扩展名,但我不知道如何使系统足够聪明,能够灵活地打开我扔给它的任何文件类型,而不需要对所有实例进行硬编码。什么好主意吗?
编辑:目前我正在做以下的事情。
private void createPDF(byte[] file, string Name)
{
int fileSize = file.Length;
Response.AppendHeader("content-length", fileSize.ToString());
Response.ContentType = "application/pdf";
if (!Name.Contains("."))
Name = Name + ".pdf";
Response.AddHeader("Content-Disposition", "attachment; filename=" + Name);
Response.BinaryWrite(file);
//Response.Clear();
Response.Flush();
Response.End();
}
然而,我现在需要能够发送扩展并打开它。文档需要能够被最终用户下载。我将限制上传,不允许任何恶意文件扩展名,认为这是一个给定的。谢谢大家,流感病毒让我很头疼,我无法思考…
octet-stream
mime-type应该可以。
private void createFILE(byte[] file, string Name)
{
int fileSize = file.Length;
Response.AppendHeader("content-length", fileSize.ToString());
Response.ContentType = "octet-stream";
if (!Name.Contains("."))
Name = Name + ".(your_extension)";
Response.AddHeader("Content-Disposition", "attachment; filename=" + Name);
Response.BinaryWrite(file);
Response.Flush();
Response.End();
}