1. Armazene a imagem no banco de dados
Use o seguinte conhecimento:
1. Use objetos de fluxo
2. Encontre o tamanho e o tipo de imagem para enviar
3. Como usar o método InputStream
para inserir as condições necessárias para imagens
1. O atributo enctype da tag #Form deve ser definido como enctype="multipart/form-data"
2.# Precisamos de um formulário <input type=file> para permitir que os usuários selecionem os arquivos que desejam carregar. Ao mesmo tempo, precisamos importar o namespace System.IO para processar o objeto de fluxo e fazer os seguintes preparativos para. SqlServer.
1.# Requer uma tabela contendo pelo menos um campo de tipo de imagem
2.# Seria melhor se tivéssemos outro campo de tipo de caractere variável para armazenar o tipo de imagem.
controle de formulário
1. O controle System.Web.UI.HtmlControls.HtmlInputFile é usado para inserir imagens. Colocamos esse controle no webform e o nomeamos "imgInput".
2. Ao mesmo tempo, adicione um
código de programa
do botão de confirmação de upload "Button1"
AddImg, usado para retornar o conteúdo da imagem a ser carregada
1Private Function AddImg()Function AddImg(ByVal InputImg As System.Web.UI.HtmlControls.HtmlInputFile, ByVal ImgType As String, ByVal MaxSize As Int64) As Byte()
2' Passe um controle htmlinputfile, um formato de imagem carregado e um valor máximo de imagem carregado e retorne o conteúdo da imagem. Você precisa escrever o conteúdo no banco de dados e também pode escrever o tipo de imagem ao mesmo tempo.
3 Dim intImageSize como Int64
4 Dim strImageType como string
5 Dim ImageStream como fluxo
6 ' Obtém o tipo de imagem
7 strImageType=InputImg.PostedFile.ContentType
8 Se strImageType <> ImgType então
9 Response.Write("<script>alert('O tipo de imagem é ""')</script>") 'O tipo jgp é "image/pjpeg"
10 Função de saída
11 Terminar se
12 ' Obtém o tamanho da imagem
13intImageSize = InputImg.PostedFile.ContentLength
14 Se intImageSize > MaxSize então
15 Response.Write("<script>alert('A imagem não deve ser maior que K')</script>")
16 Função de saída
17 Terminar se
18 ' Lê a imagem
19 ImageStream = InputImg.PostedFile.InputStream
20 Dim ImageContent (intImageSize) como byte
21 Dim intStatus como inteiro
22 intStatus = ImageStream.Read(ImageContent, 0, intImageSize)
23 Retornar ImageContent
24 Função Final
Exemplo de chamada
Dim imageContent() As Byte
de
imagem enviada é jpg e o tamanho máximo não pode exceder 500K.
Insira-a no banco de dados.
use qualquer método (recomenda-se procedimentos armazenados). Basta inserir imageContent em um campo do tipo imagem no banco de dados.
2. Ler a imagem do banco de dados
é relativamente simples:
supondo que a variável img seja o conteúdo da imagem que você recuperou do banco de dados, use-a diretamente
Resposta.BinaryWrite(img)
Você pode enviar a imagem para a página
Três: Resumo:
O armazenamento de imagens no banco de dados realmente desempenha um papel na proteção de imagens. Dessa forma, mesmo que outras pessoas naveguem em sua máquina, elas não poderão ver suas imagens importantes. imagens.