vb.net 如何从资料表中读取二进制图像
'从 Byte() 中读取图像
Public Function GetImageFromStream(ByVal ImageStream As Byte()) As Image
Me.mobjImage = Nothing
If (ImageStream Is Nothing) Then
Return False
End If
Dim index As Integer = 0
If (((ImageStream(0) = &H15) AndAlso (ImageStream(1) = &H1C)) AndAlso (ImageStream.Length >= 80)) Then
index = &H4E
Do While (index < (ImageStream.Length - 1))
If ((ImageStream(index) = &H42) AndAlso (ImageStream((index + 1)) = &H4D)) Then
Exit Do
End If
index += 1
Loop
If ((ImageStream(index) <> &H42) OrElse (ImageStream((index + 1)) <> &H4D)) Then
index = &H87
End If
End If
Try
Dim stream As New MemoryStream(ImageStream, index, (ImageStream.Length - index))
objImage = Drawing.Image.FromStream(stream)
Catch obj1 As Exception
return nothing
End Try
Return objImage
End Function
Public Function GetImageFromStream(ByVal ImageStream As Byte()) As Image
Me.mobjImage = Nothing
If (ImageStream Is Nothing) Then
Return False
End If
Dim index As Integer = 0
If (((ImageStream(0) = &H15) AndAlso (ImageStream(1) = &H1C)) AndAlso (ImageStream.Length >= 80)) Then
index = &H4E
Do While (index < (ImageStream.Length - 1))
If ((ImageStream(index) = &H42) AndAlso (ImageStream((index + 1)) = &H4D)) Then
Exit Do
End If
index += 1
Loop
If ((ImageStream(index) <> &H42) OrElse (ImageStream((index + 1)) <> &H4D)) Then
index = &H87
End If
End If
Try
Dim stream As New MemoryStream(ImageStream, index, (ImageStream.Length - index))
objImage = Drawing.Image.FromStream(stream)
Catch obj1 As Exception
return nothing
End Try
Return objImage
End Function