Ver Mensaje Individual
  #2 (permalink)  
Antiguo 02/09/2015, 16:01
agleiva
(Desactivado)
 
Fecha de Ingreso: enero-2015
Mensajes: 393
Antigüedad: 9 años, 3 meses
Puntos: 52
Respuesta: [C#] Editar líneas de archivos de texto

Tu código no tiene mucho sentido. txtUsuario es una variable que no tiene ningún valor asignado, como bien te dice el compilador, y no se puede usar.

Además de eso, el tipo string no tiene ninguna propiedad "Text", con lo cuál txtUsuario.Text es inválido.

yo lo que haría es esto:

Código C#:
Ver original
  1. var path = @"C:\\Users\\Usuario\\Desktop\\Textos\\carpetaArchivos\\" + nombreArchivo + ".txt";
  2.  
  3. var nombre = "Nombre: ";
  4. var apellidos = "Apellidos: ";
  5.  
  6. var nuevoNombre = "Juan";
  7. var nuevoApellido = "Perez";
  8.  
  9. var lines = File.ReadAllLines(path);
  10.  
  11. var replaced = lines.Select(x =>
  12. {
  13.     if (x.StartsWith(nombre))
  14.         return nombre + nuevoNombre;
  15.     if (x.StartsWith(apellidos))
  16.         return apellidos + nuevoApellido;
  17.     return x;
  18. });
  19.  
  20. File.WriteAllLines(path, replaced);

Así de simple. Levantás todas las líneas, reemplazás, escribís todas las líneas. Te evitás StreamReaders, StreamWriters y toda la perorata.

Aclaración: puse doble barras en el path porque este foro no hace syntax highlight apropiadamente, pero no es necesario en el código.