SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => C# => Mensaje iniciado por: kalixe985 en Viernes 16 de Noviembre de 2007, 00:17

Título: Reemplazar Una Línea En Concreto De Un Fichero De
Publicado por: kalixe985 en Viernes 16 de Noviembre de 2007, 00:17
Hola!!!
Resulta que estoy haciendo una aplicación que genera un fichero de texto plano (extensión .proyecto) en el cual escribo 2 líneas. En la primera pongo una ruta y en la segunda otra ruta a una imagen. Lo que quiero hacer es poder sustituir una línea en concreto del fichero; por ejemplo, si la imagen cambia, pues quiero reemplazar la ruta que aparece en la 2º línea del fichero de texto y poner la nueva ruta de la imagen. ¿Existe algún método que me pueda ayudar? Lo estaba haciendo con
Código: Text
  1. StreamWriter s=new StreamWriter(rutaFichero,true);
  2. s.WriteLine(datos);
  3.  
, pero al hacerlo así, me añadía la línea al final del fichero y no me reemplazaba la línea que queria sustituir (ya sé que es porque el "true" habilita el "Append" y por eso se añaden datos al final del fichero).

Sobretodo, lo que quiero es no tener que reescribir  todo el fichero de nuevo sino reemplazar una línea en concreto.

A ver si alguien me puede ayudar, gracias de antemano!!!
Título: Re: Reemplazar Una Línea En Concreto De Un Fichero De
Publicado por: JuanK en Viernes 16 de Noviembre de 2007, 02:33
salvo que la nueva linea sea de un tamaño identico a la original, no puedes hacer eso.

si si es asi entonces utiliza mecanismos de acceso aleatorio y binario

BinaryWriter, por ejemplo.
Título: Re: Reemplazar Una Línea En Concreto De Un Fichero De
Publicado por: kalixe985 en Viernes 16 de Noviembre de 2007, 11:00
De acuerdo. Muchas gracias y saludos!!!