none
c# Guardar en archivo .doc un campo image de sql server RRS feed

  • Pregunta

  • Buenas:

    Tengo un campo image en sql server que contiene texto, necesito guardar eso en un archivo .doc. Al momento he realizado el siguiente codigo:

    SqlConnection Conexion = new SqlConnection();
                    Conexion.ConnectionString = @"Server=5.0.0.4;Database=BAse;User ID=Juan;Password=Juan;";
                    Conexion.Open();
                    string SQL = @"select dac.org_codigo, dac.dac_codigo, dac.dac_nombre, dta_texto from dac,tta where dac.dac_codigo = tta.dac_codigo and dac.dac_codigo ='FALPER';";
                    SqlCommand Comando = new SqlCommand(SQL, Conexion);

                    SqlDataReader Lector = Comando.ExecuteReader();
                    int cont = 0;

                    while (Lector.Read())
                    {
                        {
                            StreamWriter fileWrite = new StreamWriter(@"D:\Lex100\" + cont.ToString() + ".doc");
                            byte[] archivo = (byte[])Lector["dta_texto"];
                           cont++;
                           foreach (byte UnDato in archivo)
                            {
                                fileWrite.Write(UnDato.ToString()); --> aca no graba lo mismo que esta en sqlserver
                            }
                                fileWrite.Close();

                        }

                     Lbl_cant.Text = cont.ToString();
                    Conexion.Close();

    El SQL veo algo asi (haciendo doble click en el campo):

    {\rtf1\ansi\ansicpg1252\uc1\deff0\stshfdbch0\stshfloch0\stshfhich0\stshfbi0\deflang3082\deflangfe3082{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}

    En el archivo que graba mi codigo:

    1239211411610249929711011510592971101151059911210349505350921179949921001

    Claro esta, necesito que se grabe tal cual esta. Esto contiene formato y texto de un documento word que fue grabado con anterioridad.

    Saludos

    jueves, 29 de agosto de 2013 12:34