hola, tengo un metodo que recibe un Image img de System.Drawing y tengo que retornar un array de bytes para guardarla en la base de datos.
Alguien sabe como se hace esto?
Saludos.
| |||
Convertir image a bytes[] hola, tengo un metodo que recibe un Image img de System.Drawing y tengo que retornar un array de bytes para guardarla en la base de datos. Alguien sabe como se hace esto? Saludos. |
| |||
Respuesta: Convertir image a bytes[] Me salvaste la vida Peterpay, ya decía yo que se podía hacer la conversión directamente sin necesidad del file. Codigo viejo (que me enseño mi profe, que no tiene porque saberlo todo): 'Al cargar la imagen en el PictureBox Dim op As New OpenFileDialog op.Filter = "Archivo de imagenes|*.*" archivo = op.FileName 'Para guardar la imagen en la BD Dim fsArchivo As New FileStream(archivo, FileMode.Open, FileAccess.Read) Dim arregloBytes(fsArchivo.Length) As Byte fsArchivo.Read(arregloBytes, 0, fsArchivo.Length) fsArchivo.Close() Dim cmd As New SqlCommand("sp_ACTUALIZARPRODUCTO", conexion) cmd.Parameters.Add("@imagen", SqlDbType.Image).Value = arregloBytes Codigo nuevo: Dim img As Image = picture.Image Dim stream As MemoryStream = New MemoryStream() img.Save(stream, Imaging.ImageFormat.Bmp) Dim cmd As New SqlCommand("sp_ACTUALIZARPRODUCTO", conexion) cmd.Parameters.Add("@imagen", SqlDbType.Image).Value = stream.GetBuffer() y puedo prescindir de la ruta de la imagen que a la hora de validar me generaba un gran caos. Última edición por jhonathan_lm; 15/10/2008 a las 23:34 |