SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => C# => Mensaje iniciado por: rogerfor en Lunes 30 de Mayo de 2011, 21:20

Título: Cmo guardar datos de varios textbox en un documento de texto
Publicado por: rogerfor en Lunes 30 de Mayo de 2011, 21:20
Buenas tardes estamos empezando con c# y nos dejaron hacer un proyecto cualquiera para empezar a programar, y se me ocurrio hacer algo asi como ingresar varios datos en textos, por ejemplo sean, nombre, apellido, edad, cargo, y cosas así y pues con un boton me permita limpiar, y otro guardar, y que al guardar me cree un .txt con los datos que ingrese en los textbox, pero pues no tengo ni idea de como hacerlo, y espeor que me puedan ayudar mas que solo en la parte de como guardar y generar el archivo .txt.
les agradezco de ante mano cualquier ayuda.
Título: Re: Cmo guardar datos de varios textbox en un documento de texto
Publicado por: tannke en Lunes 30 de Mayo de 2011, 22:26
Debes utilizár la librería IO (using System.IO;) y en ella encontraras entre otros los metodos "StreamWriter" y "StreamReader", busca información sobre ellos, son muy faciles de utilizar.

Cualquier duda pregunta. Un saludo
Título: Re: Cmo guardar datos de varios textbox en un documento de texto
Publicado por: rogerfor en Martes 31 de Mayo de 2011, 04:12
Hola averigue y probe con unas cosas y si me las guarda solo que sin formato

asi:

apellidonombreedaddirecciontelefono

como podria guardarlos con "estilo" asi separados por columnas y cosas asi
que al ir guardando me lo despliegue asi

apellido1  nombre1
apellido2 nombre2

este es mi codigo:
Código: C#
  1.  
  2. using System;
  3. using System.Collections.Generic;
  4. using System.ComponentModel;
  5. using System.Data;
  6. using System.Drawing;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Windows.Forms;
  10. using System.IO;
  11.  
  12. namespace Proyecto
  13. {
  14.     public partial class Form1 : Form
  15.     {
  16.         public Form1()
  17.         {
  18.             InitializeComponent();
  19.         }
  20.  
  21.         private void Form1_Load(object sender, EventArgs e)
  22.         {
  23.  
  24.         }
  25.  
  26.         private void guardar_Click(object sender, EventArgs e)
  27.         {
  28.             //fijamos dondevamos a crear el archivo
  29.             StreamWriter escrito = File.CreateText("c:\Prueba.txt"); // en el
  30.             //para agregar datos al archivo existente
  31.             //StreamWriter escrito = File.AppendText("c:\file.txt"); // en el
  32.             //En una variable tipo string ubicamos el contenido del Textbox
  33.             //Se podría hacer directamente.
  34.             String contenido = apellido.Text;
  35.             String contenido2 = nombre.Text;
  36.             String contenido3 = edad.Text;
  37.             String contenido4 = direccion.Text;
  38.             String contenido5 = telefono.Text;
  39.             //escribimos.
  40.             escrito.Write(contenido.ToString());
  41.             escrito.Write(contenido2.ToString());
  42.             escrito.Write(contenido3.ToString());
  43.             escrito.Write(contenido4.ToString());
  44.             escrito.Write(contenido5.ToString());
  45.             escrito.Flush();
  46.             //Cerramos
  47.             escrito.Close();
  48.             //Vaciamos
  49.             apellido.Text = "";
  50.             nombre.Text = "";
  51.             edad.Text = "";
  52.             direccion.Text = "";
  53.             telefono.Text = "";
  54.         }
  55.  
  56.         private void salir_Click(object sender, EventArgs e)
  57.         {
  58.            
  59.         }
  60.      
  61.     }
  62. }
  63.  
  64.  
  65.  
Título: Re: Cmo guardar datos de varios textbox en un documento de texto
Publicado por: gabio2 en Martes 31 de Mayo de 2011, 15:50
Cita de: "rogerfor"
Hola averigue y probe con unas cosas y si me las guarda solo que sin formato

asi:

apellidonombreedaddirecciontelefono

como podria guardarlos con "estilo" asi separados por columnas y cosas asi
que al ir guardando me lo despliegue asi

apellido1  nombre1
apellido2 nombre2

este es mi codigo:
Código: C#
  1.  
  2. using System;
  3. using System.Collections.Generic;
  4. using System.ComponentModel;
  5. using System.Data;
  6. using System.Drawing;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Windows.Forms;
  10. using System.IO;
  11.  
  12. namespace Proyecto
  13. {
  14.     public partial class Form1 : Form
  15.     {
  16.         public Form1()
  17.         {
  18.             InitializeComponent();
  19.         }
  20.  
  21.         private void Form1_Load(object sender, EventArgs e)
  22.         {
  23.  
  24.         }
  25.  
  26.         private void guardar_Click(object sender, EventArgs e)
  27.         {
  28.             //fijamos dondevamos a crear el archivo
  29.             StreamWriter escrito = File.CreateText("c:\Prueba.txt"); // en el
  30.             //para agregar datos al archivo existente
  31.             //StreamWriter escrito = File.AppendText("c:\file.txt"); // en el
  32.             //En una variable tipo string ubicamos el contenido del Textbox
  33.             //Se podría hacer directamente.
  34.             String contenido = apellido.Text;
  35.             String contenido2 = nombre.Text;
  36.             String contenido3 = edad.Text;
  37.             String contenido4 = direccion.Text;
  38.             String contenido5 = telefono.Text;
  39.             //escribimos.
  40.             escrito.WriteLine(contenido.ToString() + " " + contenido2.ToString());
  41.             escrito.Write(contenido3.ToString() + " " + contenido4.ToString());
  42.             escrito.Flush();
  43.             //Cerramos
  44.             escrito.Close();
  45.             //Vaciamos
  46.             apellido.Text = "";
  47.             nombre.Text = "";
  48.             edad.Text = "";
  49.             direccion.Text = "";
  50.             telefono.Text = "";
  51.         }
  52.  
  53.         private void salir_Click(object sender, EventArgs e)
  54.         {
  55.            
  56.         }
  57.      
  58.     }
  59. }
  60.  
  61.  
  62.  


Espero te sirva saludos! :)
Título: Re: Cmo guardar datos de varios textbox en un documento de texto
Publicado por: rogerfor en Martes 31 de Mayo de 2011, 19:09
Gracias!!!!
Era justo lo que necesitaba!!!
solo quisiera saber si puedo agregar mas datos sin que me borre los anteriores ya que cada vez que escribo otros datos me borra los anteriores.
Y de verdad te agradezco mucho tu ayuda.
Saludos!!

PD: estaba buscando como mostrar los datos que habia guardado y me tope con esto, lo agregue a un boton, pero cuando le doy clic no pasa nada, no se si tengo algo malo
este es el codigo:

Código: C#
  1.  
  2. private void button3_Click(object sender, EventArgs e)
  3.         {
  4.             StreamReader objReader = new StreamReader("c:\prueba.txt");
  5.             string sLine = "";
  6.             ArrayList arrText = new ArrayList();
  7.  
  8.             while (sLine != null)
  9.             {
  10.                 sLine = objReader.ReadLine();
  11.                 if (sLine != null)
  12.                     arrText.Add(sLine);
  13.             }
  14.             objReader.Close();
  15.  
  16.             foreach (string sOutput in arrText)
  17.                 Console.WriteLine(sOutput);
  18.             Console.ReadLine();
  19.         }
  20.  
  21.  
Título: Re: Cmo guardar datos de varios textbox en un documento de texto
Publicado por: gabio2 en Martes 31 de Mayo de 2011, 19:56
mira esto te puede ayudar:

http://social.msdn.microsoft.com/Forums ... 0d629c585a (http://social.msdn.microsoft.com/Forums/es/vcses/thread/afc63b45-c3c0-43a5-abfa-940d629c585a" onclick="window.open(this.href);return false;)

Con respeto a tu duda de como guardar lo que tenias anteriormente.. bueno.. primero te recomiendo LEER TODO lo que tengas en tu archivo  y antes de guardar lo "NUEVO".. primero guardes lo que LEISTE anteriormente y luego lo "NUEVO" para conservar  todo, esa es una opción.. saludos! :)
Título: Re: Cmo guardar datos de varios textbox en un documento de texto
Publicado por: rogerfor en Martes 31 de Mayo de 2011, 20:43
mmm la verdad no te entendi mucho, es que soy nuevo en todo esto, pero pues buscare lo que me dijiste haber que logro hacer
muchas gracias por la ayuda de verdad.
saludos!!
Título: Re: Cmo guardar datos de varios textbox en un documento de texto
Publicado por: gabio2 en Martes 31 de Mayo de 2011, 21:17
Tu aplicación está sobre Windows Forms no sobre Consola, para abrir una consola sobre ese MISMO proceso de tu Formulario sí se puede pero no es un tema de kinder gardem.. es decir tienes que conectarte con la API de windows.. etc etc...etc..  es un poco más avanzado.. y veo que apenas estás empezando.  

Ahora para lo del archivo de texto que creas, el problema que tienes es sencillo, es decir para GUARDAR, tienes que LEER   antes, GUARDAR TODO LO QUE TENGAS EN UN ARRAY ... luego a tu ARRAY le agregas lo "NUEVO" que quieras agregar.. entonces al momento de guardar (Console.Writeline()), vas a volver a recorrer tu ARRAY e ir poniendo otra vez TODO....


Saludos! :)..
Título: Re: Cmo guardar datos de varios textbox en un documento de texto
Publicado por: tannke en Miércoles 1 de Junio de 2011, 18:25
Para el tema de escribir mas datos en el archivo, si te fijas el método "StreamWriter" tiene 7 sobrecargas, y en una de ellas aparece una variable booleana llamada append, la funcion de esta es exactamente lo que estas buscando:

StreamWriter escrito = new StreamWriter("c:\Prueba.txt", true);

Prueba asi, un saludo
Título: Re: Cmo guardar datos de varios textbox en un documento de texto
Publicado por: gabio2 en Miércoles 1 de Junio de 2011, 18:30
Ciertoo.. muyyy cierto, había olvidado esa sobre carga!!... total razón a tanke!..
Título: Re:Cmo guardar datos de varios textbox en un documento de texto
Publicado por: ppuuttaa2 en Lunes 30 de Septiembre de 2013, 17:07
IOExcepcion was unhandled

StreamWriter escrito = File.CreateText("c:\archivoCliente.txt");
 No pasa de ahi no me crea el archivo, ni tampoco me lee cuando ya creo uno con el comando:
StreamWriter escrito = File.AppendText("c:\file.txt");
 Intente un try
try {
StreamWriter escrito = File.CreateText("c:\archivoCliente.txt");
}catch (Exception)
                {
                    throw new System.IO.IOException("File Open Error!");
                }

Pero me sigue dando el mismo error. Ayuda porfavor. No se que sucede ya he buscado algunos foros y no me ayudan con este problema gracias (: