Hay varias cosas que conceptualmente no están bien, como llevo prisa, te respondo rápido y de pasada, por tanto sin analizar más que por encima tú código... a la noche con más trnquilidad te lo reviso mejor, pero si en lo que ahora te diga logras solucionarlo, pues mejor.
- Es raro que a los métodos de una clase los llames 'roLO_QUE_SEA', y en cambio a la clase le dejes el nombre 'Program'. Da a la clase el nombre propicio, por ejemplo 'CuerpoHumano', entonces los métodos 'Comer', 'NumeroDedos', 'Caminar', 'EstaEnfermo', suenan naturales a una clase 'CuerpoHumano'...
- Es confuso igualmente una variable 'nombre' cuyo contenido aloja todo el contenido de un fichero...
- Donde aparece declarada esa variable nombre, lees todo el texto del fichero y se lo asignas a una variable. Pero dicha variables es de cadena, luego su contenido no es un array de strings, ni siquiera un array de líneas, tampoco un array de bytes (chars), peor ahí tienes un bucle tal cual comparas con ese array 'roOTRO_LO_QUE_SEA'...
- Todo eso está en una función llamada 'Inicio', pero aún así pretendes escribir un fichero con el contenido de 'guardarNombre', que lo más probable es que sea una cadena vacía, si la función 'Inicio' hace honor a su nombre.
- Los métodos de lectura y escritura del fichero por otro lado (y es aquí donde pueda residir tu mayor problema), refiere a una ruta relativa, no a una ruta absoluta. Una ruta relativa lo es de la ruta que actualmente sea la ruta absoluta, la cual puede cambiar fuera de tu programa. (Esto es, pudiera estar siendo escrito correctamente pero vete a saber donde...).
Es preferible crear un string 'RutaAbs' = "C:\\tu ruta\al sitio que\te refieras\", así luego también una string rutaFile = "El dichoso fichero.txt", y entonces abres, lees, escribes con string ruta = RutaAbs + RutaFile... por ejemplo:
If (IO.File.Exists(ruta)); .... tendrás más posibilidades de éxito si el resto del código está bien.
- No he mirado más código que hasta llegar a esa función 'Inicio'... pudiera haber otros problemas.
Deberías intentar esforzarte por analizar lo que estás haciendo y ser capaz de describirlo en 4 líneas para que cualquiera pueda hacerse una idea sin necesidad de tener que leer todo tu código y 'despaguetizarlo'... sobretodo, otorga nombres descriptivos a las variables, funciones (y también clases, pués el nombre d ela clase debería ya sola ella dar una idea aproximada de lo que hace o se supone que ha de hacer, tampoco sobra un comentario acompañando a cada clase y función que especifique cual es el cometido de la misma, sobretodo si el nombre no se eligió adecuadamente (por ejemplo ese inicio, es muy confuso, en general la incialización de una clase debería hacerse a través de sus métodos 'New').
Si tienes tiempo y miras de corregir y luego respondes si arreglaste tus problemas bien, si no a la noche (madrugada más bien), lo reviso con más calma...
- Es raro que a los métodos de una clase los llames 'roLO_QUE_SEA', y en cambio a la clase le dejes el nombre 'Program'. Da a la clase el nombre propicio, por ejemplo 'CuerpoHumano', entonces los métodos 'Comer', 'NumeroDedos', 'Caminar', 'EstaEnfermo', suenan naturales a una clase 'CuerpoHumano'...
- Es confuso igualmente una variable 'nombre' cuyo contenido aloja todo el contenido de un fichero...
- Donde aparece declarada esa variable nombre, lees todo el texto del fichero y se lo asignas a una variable. Pero dicha variables es de cadena, luego su contenido no es un array de strings, ni siquiera un array de líneas, tampoco un array de bytes (chars), peor ahí tienes un bucle tal cual comparas con ese array 'roOTRO_LO_QUE_SEA'...
- Todo eso está en una función llamada 'Inicio', pero aún así pretendes escribir un fichero con el contenido de 'guardarNombre', que lo más probable es que sea una cadena vacía, si la función 'Inicio' hace honor a su nombre.
- Los métodos de lectura y escritura del fichero por otro lado (y es aquí donde pueda residir tu mayor problema), refiere a una ruta relativa, no a una ruta absoluta. Una ruta relativa lo es de la ruta que actualmente sea la ruta absoluta, la cual puede cambiar fuera de tu programa. (Esto es, pudiera estar siendo escrito correctamente pero vete a saber donde...).
Es preferible crear un string 'RutaAbs' = "C:\\tu ruta\al sitio que\te refieras\", así luego también una string rutaFile = "El dichoso fichero.txt", y entonces abres, lees, escribes con string ruta = RutaAbs + RutaFile... por ejemplo:
If (IO.File.Exists(ruta)); .... tendrás más posibilidades de éxito si el resto del código está bien.
- No he mirado más código que hasta llegar a esa función 'Inicio'... pudiera haber otros problemas.
Deberías intentar esforzarte por analizar lo que estás haciendo y ser capaz de describirlo en 4 líneas para que cualquiera pueda hacerse una idea sin necesidad de tener que leer todo tu código y 'despaguetizarlo'... sobretodo, otorga nombres descriptivos a las variables, funciones (y también clases, pués el nombre d ela clase debería ya sola ella dar una idea aproximada de lo que hace o se supone que ha de hacer, tampoco sobra un comentario acompañando a cada clase y función que especifique cual es el cometido de la misma, sobretodo si el nombre no se eligió adecuadamente (por ejemplo ese inicio, es muy confuso, en general la incialización de una clase debería hacerse a través de sus métodos 'New').
Si tienes tiempo y miras de corregir y luego respondes si arreglaste tus problemas bien, si no a la noche (madrugada más bien), lo reviso con más calma...