2010-07-19 2 views
0

J'ai une table avec les documents enregistrés certains d'entre eux en pdf, certains d'entre eux l'image. Je veux créer une application web, pour montrer les images (qui peut être soit pdf, soit jpg) dans le même contrôle.rendu d'image ou d'un flux PDF de base de données SQL dans asp.net

je peux gérer pour voir pdf, si je mets le Response.ContentType = "application/pdf" ou de l'image si je mets "application/jpg". Mais le problème est que comment puis-je obtenir le type de fichier, ayant seulement le flux enregistré dans la base de données? A-t-il le flux les informations de type de fichier dedans?

Merci.

Répondre

0

Non, un flux n'a pas un type de contenu associé. Si vous aviez le nom de fichier d'origine, vous pourriez essayer d'en déduire le type de contenu, mais ce ne serait pas infaillible.

formats de fichiers Beaucoup ont une série de « octets magiques » qui vous permettent de détecter ce (pourrait) être dans le fichier. PDF, par exemple, commence par les octets "% PDF" (note: je ne suis pas un expert sur PDF, et il peut y avoir des situations où ce n'est pas vrai).

Si vous n'avez pas d'autre option, vous pouvez essayer d'analyser le fichier en utilisant différentes bibliothèques jusqu'à ce que vous trouviez celui qui fonctionnait (System.Drawing.Image.FromStream(), iTextSharp, etc.).

Questions connexes