Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1354 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C#] Odbc, fichier binaire

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C#] Odbc, fichier binaire

n°940399
fluminis
Posté le 07-01-2005 à 16:15:30  profilanswer
 

Bonjour à tous
 
Voila je tente en C# avec ODBC de recupérer une image stockée dans ma base de donnée dans un champ BLOB (en binaire donc) et de l'afficher directement dans une pictureBox.
 
J'ai fait ça :
 

Code :
  1. public MemoryStream GetImage()
  2. {
  3. try
  4. {
  5.  int buffSize = 100;
  6.  //Retrieve BLOB from database into DataSet.
  7.  OdbcCommand commande = new OdbcCommand("SELECT image FROM telepilotes_tbl WHERE id_telepilote=9", myConnexion_);
  8.  //Exécution de la requete
  9.  OdbcDataReader resultat=commande.ExecuteReader();
  10.  // On teste s'il existe au moins un résultat
  11.  if (resultat.Read())
  12.  {
  13.   int startIndex = 0;
  14.   // Read the bytes into outbyte[] and retain the number of bytes returned.
  15.   MemoryStream stmBLOBData = new MemoryStream();
  16.   byte[] outbyte = new byte[buffSize]; 
  17.   long retval = resultat.GetBytes(0, startIndex, outbyte, 0, buffSize);
  18.   // Continue reading and writing while there are bytes beyond the size of the buffer.
  19.   while (retval == buffSize)
  20.   {
  21.    stmBLOBData.Write(outbyte,startIndex,buffSize);
  22.    stmBLOBData.Flush();
  23.    // Reposition the start index to the end of the last buffer and fill the buffer.
  24.    startIndex += buffSize;
  25.    retval = resultat.GetBytes(0, startIndex, outbyte, 0, buffSize);
  26.   }
  27.   stmBLOBData.Write(outbyte, 0, (int)retval - 1);
  28.   stmBLOBData.Flush();
  29.   return stmBLOBData;
  30.  }
  31. }
  32. catch(Exception ex)
  33. {
  34.  MessageBox.Show(ex.Message);
  35. }
  36. MessageBox.Show("NuLLLLLL !" );
  37. return null;
  38. }


 
pour ensuite l'utiliser comme ça :
pictureBox1.Image = Image.FromStream(GetImage());
 
mais ça ne fonctionne pas.
J'ai une erreur "Offset et length hors limite pour ce tableau ou bien le nombre d'élément est supérieur au nombre d'éléments de l'index à la fin de la collection source"
 
 :pt1cable:  
 
z'auriez une idée d'ou vient le pb ?
 
merci d'avance
 
fluminis

mood
Publicité
Posté le 07-01-2005 à 16:15:30  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C#] Odbc, fichier binaire

 

Sujets relatifs
Pbs de flux dans un fichierPbs structure en liste chainée et manip de fichier
[FONT] Format Fichier PCFFonction pour extraire nom d'un fichier
Enlever des lignes dans un fichierprobleme acces a ODBC
Impossible de mettre un identifiant de fichier dans une variable !SQL - pb de Bulk Insert depuis un fichier txt
enregister un objet dans un fichierEnregistrer dans un fichier un tableau de structure
Plus de sujets relatifs à : [C#] Odbc, fichier binaire


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR