Ver Mensaje Individual
  #6 (permalink)  
Antiguo 03/09/2012, 12:43
Avatar de Aquaventus
Aquaventus
 
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 9 meses
Puntos: 267
Respuesta: Leer Rtf en Richtextbox desde Mysql en VB.Net

Haber... fripas :
1º Importas el System.IO;
2º En mi ejemplo mi RichTextBox se llama "rtb"(Que obviamente le tendrás que poner el nombre que lleva en tu formulario).
Almacenamos el RichTextBox en un directorio... por ejemplo en "Mis Documentos" :
Código C:
Ver original
  1. rtb.SaveFile(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal) + @"\prueba.rtf", RichTextBoxStreamType.RichNoOleObjs);
Luego pasamos el archivo a un array de bytes llamado arrFile :
Código C:
Ver original
  1. FileStream mi_archivo = new FileStream((System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal) + @"\prueba.rtf"), FileMode.OpenOrCreate, FileAccess.ReadWrite);
  2.             Byte[] arrFile = new Byte[mi_archivo.Length];
  3.  
  4.             BinaryReader reader = new BinaryReader(mi_archivo);
  5.             arrFile = reader.ReadBytes(Convert.ToInt32(mi_archivo.Length));
  6.             reader.Close();
esta variable arrFile, es la que tienes que guardar en tu campo blob.

3º Después de todo el 2do paso, haces la consulta a tu BD donde está almacenado tu archivo y lo almacenas por ejemplo en un datatable(Para este tendrías que importar el System.Data) :
Código C:
Ver original
  1. DataTable data;
  2. data = //TU CONSULTA CON UN MYSQLDATAADAPTER...
  3. if (data.Rows.Count != 0)
  4.                 {
  5.                     //Creo mi arreglo que almacenara los bytes del archivo
  6.                     Byte[] barrFile = (Byte[])(data.Rows[0][0]);
  7.                     //Creo el archivo apartir de los bytes
  8.                     using (FileStream newFile = new FileStream((System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal) + @"\prueba.rtf"), FileMode.Create, FileAccess.Write))
  9.                     {
  10.                     newFile.Write(barrFile, 0, barrFile.Length);
  11.                     newFile.Flush();
  12.                     newFile.Close();
  13.                     }
  14.                 }
Eso sería, espero haberte ayudado con tu problema. Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net