none
VALIDAR SI EXISTE UN NUMERO EN UN ARCHIVO TXT Y SI EXISTE MOSTRARME LA LINEA COMPLETA EN UN DATAGRIDVIEW RRS feed

  • Pregunta

  • tengo un archivo txt con los campos codigo, descripcion, precio. cuando ponga el codigo en un textbox si existe ese codigo en el archivo txt, quiero que me muestres el codigo la descripcion y el precio en un datagrigview

    ejemplo

    codigo      descripcion         precio

    100           cafe                    10

          

    miércoles, 30 de mayo de 2018 12:32

Todas las respuestas

  • aquí les dejo este código por si alguien lo necesita en el futuro

      private void button1_Click(object sender, EventArgs e)
            {
                //Ahora en el click del botón de búsqueda:
                StreamReader objleer_archivo;
                string nombredelarchivo = "nombre de archivo.txt"; //aqui en nombre de archivo
                string Ruta = "C: nombre de ruta";//nombre de la ruta

                if (System.IO.File.Exists(Ruta + " \\ " + nombredelarchivo))
                {
                    objleer_archivo = new StreamReader(Ruta + " \\ " + nombredelarchivo);




                    string Comprobacion = System.IO.File.ReadAllText(Ruta + " \\ " + nombredelarchivo);
                    if (Comprobacion == "")
                    {

                    }
                    else
                    {
                        while (!objleer_archivo.EndOfStream) // -- fin de archivo
                        {

                            string trayecto;
                            trayecto = objleer_archivo.ReadLine();
                            // monta la linea en una array de string
                            string[] Campo = trayecto.Split('|');
                            double ID = double.Parse(Campo[0]);
                            string nombre = Campo[1];
                           decimal precio = decimal.Parse(Campo[2]);
                          

                            if (ID == Convert.ToDouble(textBox1.Text.ToString())) //validar si existe el codigo
                            {
                                int Cantidad=1;
                                dataGridView1.Rows.Add(ID, nombre, Cantidad, precio); //llenar dataGridview
                            }
                            else
                            {

                            }



                        }

                        objleer_archivo.Close();

                        objleer_archivo.Dispose();// destroy
                    }

                }
            }

    miércoles, 30 de mayo de 2018 17:09
  • Ahora que sabes como leer los datos de un archivo y obtener sus campos te sugiero, como un desafío muy interesante, que completes y hagas funcionar la propuesta que te hicieron en el otro post. 

    La otra  propuesta está mucho mejor porque se abre una sola vez el archivo y se cargan sus datos en una lista de objetos "item" que ya tendrá los datos bien cargados (no habrá datos null, ni nada raro). En esa lista podrás hacer consultas, agregados y modificaciones en forma sencilla, luego mostrarás esos resultados en la grilla o los enviarás a un reporte para imprimirlos y finalmente podrás guardar los cambios con un procedimiento parecido al que usas para leer el archivo. Por supuesto que hay que escribir código para todo esto, pero trabajar con una lista de objetos es mucho mas fácil y seguro.

    Saludos 


    • Editado AntiWork miércoles, 30 de mayo de 2018 20:47
    miércoles, 30 de mayo de 2018 20:44