2010-07-19 59 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等)。