Assumindo o upload do ASP.NET e do formulário, alguma maneira de garantir que o arquivo seja uma imagem?

StackOverflow https://stackoverflow.com/questions/1917016

  •  20-09-2019
  •  | 
  •  

Pergunta

Existe alguma maneira de saber se o arquivo é uma imagem através do tipo MIME ou de outra maneira de inspeção? As imagens estão entrando em uma galeria e as redimensionarei conforme necessário e querer garantir, da melhor maneira possível, que o arquivo que estou prestes a processar com o GDI é, de fato, uma imagem.

Foi útil?

Solução

Tente carregar o arquivo em um Bitmap objeto. Se você tiver uma exceção, não será uma imagem.

Outras dicas

Confira esta pergunta/resposta em Stackoverflow e Este. Eu acredito que esta é uma pergunta duplicada.

Além disso, veja a leitura de um arquivo número mágico Especialmente se você estiver apenas tentando determinar se o arquivo é um dos poucos tipos aceitáveis. Magic Number Wikipedia

Sim, você pode verificar a propriedade FileUploadctrl.postedfile.contentType e comparar essa string com uma lista esperada de tipos de imagens MIME, IE Imagem/GIF. Você também pode executar validação adicional carregando os bytes de imagem carregados em um objeto System.Drawing.image. Se carregar, você sabe que você tem uma boa imagem, se não carregar, talvez a imagem seja uma falsificação ou um formato desconhecido.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top