2010-07-19 61 views
0

我有一个表格,其中一些文档以pdf格式保存,其中一些是图像。 我想创建一个web应用程序,在同一个控件中显示图像(可以是pdf,也可以是jpg)。从asp.net中的SQL数据库渲染图像或pdf流

如果我设置Response.ContentType =“application/pdf”或图像,如果我设置“application/jpg”,我可以设法查看pdf。但问题是,我如何获得文件类型,只有流保存到数据库中?它有流中的文件类型信息吗?

谢谢。

回答

0

不,流没有与其关联的内容类型。如果你有原始文件名,你可以尝试从中得到内容类型,但这不是万无一失的。

许多文件格式都有一系列“魔术字节”,可以让您检测文件中可能存在的内容。例如,PDF以字节“%PDF”开头(注意:我不是PDF的专家,可能会出现这种情况)。

如果你没有别的选择,你可以尝试使用各种库解析文件,直到找到一个可以工作的文件(System.Drawing.Image.FromStream(),iTextSharp等)。