Convertir Bitmap en octets
Je suis en utilisant winform C#).
J'ai l'image en tant qu'image bitmap et je veux convertir bitmap de l'octet pour les insérer dans la Base de données.
Oui, pourriez-vous s'il vous plaît me dire comment faire?
- double possible de Convertir une image bitmap dans un tableau d'octets en C#?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser ImageConverter obtenir le tableau d'octets en forme imaage
OU vous pouvez Utiliser BitmapImage pour faire la conversion.
Utiliser ces deux méthodes pour convertir bitmap de tableau d'octets et de tableau d'octets en bitmap.
BitmapImage
vers et à partir d'un tableau d'octets, pas unBitmap
. Bien sûr, vous pouvez également convertir unBitmap
à unBitmapImage
mais pourquoi faire?Vous pouvez utiliser le code suivant pour cette:
Comme une note de côté, je ne sais pas comment taille de vos images et base de données que vous utilisez, mais le stockage de grosses gouttes dans une base de données est généralement pas une bonne idée de performance. Les performances du système est beaucoup mieux pour les grosses gouttes de performance de base de données. SQL Server a le soutien direct pour un point de vue transactionnel stockage d'objets blob sur le système de fichiers (et ils suggèrent de l'utiliser pour les fichiers de 1 mo et plus).
J'ai vu des graves lire la dégradation des performances dans SQL Server Compact lors du stockage de fichiers dans la base de données. Je ne sais pas comment les autres bases de données effectuer lors de stocker de grandes gouttes.
Une autre solution possible est de stocker les images sur le système de fichier et d'avoir des pointeurs dans votre base de données pour les fichiers.
Vous pouvez utiliser
Bitmap.Enregistrer
pour enregistrer le contenu de l'image dans un flux. Vous pouvez l'utiliser avec unMemoryStream
comme ceci:Bitmap newBitmap = new Bitmap();
.Voir la nouvelle mise à jour.