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 originalvar path = @"C:\\Users\\Usuario\\Desktop\\Textos\\carpetaArchivos\\" + nombreArchivo + ".txt";
var nombre = "Nombre: ";
var apellidos = "Apellidos: ";
var nuevoNombre = "Juan";
var nuevoApellido = "Perez";
var lines = File.ReadAllLines(path);
var replaced = lines.Select(x =>
{
if (x.StartsWith(nombre))
return nombre + nuevoNombre;
if (x.StartsWith(apellidos))
return apellidos + nuevoApellido;
return x;
});
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.