none
Leer una linea especifica de archivo txt y cambiarla RRS feed

  • Pregunta

  • saludos

    tengo un archivo que lo creo con streamwriter con 7 lineas, lo que quisiera saber es si se puede leer por ejemplo la linea 5 y modificarla entonces con streamwriter

     

    gracias de anticipacion


    try { Aprender C#; return Aprender C#; } catch { Jamas me Rendire null; } finally { Lo hare; }
    jueves, 28 de abril de 2011 15:59

Respuestas

Todas las respuestas

  • hola

    es que para ahcer esto deberas recoorer cada linea llevando un contador, cuando llege a 5 cambias el string como necesites

    y vuelcas cada linea a otro archivo temporal

    usa estas tecncias para leer y escribir en el archivo

     

    How to: Read Text from a File

    How to: Write Text to a File

    o sea recorres el archivo y cada linea lo vuelcas a otro temporal, cuando detectas la linea la modificas y vuelcas a ese archivo

    al final si necesitas puede eliminar el origina usando

    File.Delete()

    y renombras el temporal usando

    File.Move()

    para renombras lo mueves a la misma carpata cambiando el nombre

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    jueves, 28 de abril de 2011 16:14
  • saludos encantado en conocerte

    el caso es que tengo un archivo que lo creo manual para futuramente cambiarle una porcion del texto

    esto es lo que le escribo al archivo

    [SQL_INTEGRA]

    DATAB=db

    SERVER=0.0.0.0

    USER

    PASSWORD=*******

    [SQL_TRANSMISION]

    DATAB=

    SERVER=

    USER=

    PASSWORD=

    FECHA1="esta es la porcion que quiero cambiar solamente"

    FECHA2=31/12/2010

    ORIGEN=*

    DESTINO=*

    YA TENGO LO QUE DESEO CAMBIAR PERO NO SE COMO COLOCARLO


    try { Aprender C#; return Aprender C#; } catch { Jamas me Rendire null; } finally { Lo hare; }
    jueves, 28 de abril de 2011 18:17
  • Para modificar un archivo de inicialización tienes, para este caso, la función WritePrivateProfileString.

    WritePrivateProfileString("SQL_TRANSMISION", "FECHA1", "29/4/2011", "ruta\\archivo.ini");

    Para recuperar el valor de la clave

    GetPrivateProfileString("SQL_TRANSMISION", "FECHA1", "***", fecha1, 10, "ruta\\archivo.ini");

    donde fecha1 es la variable (digamos un stringbuilder), que contendrá el resultado y 10 la cantidad máxima de caracteres a leer.

    Ok, puedes hacerlo de la manera en que estás intentándolo. No hay problemas en sobreescribir una porción del stream, siempre que exista un espacio reservado. Sino vas a destruir la data que está al lado. Si escribes manualmente FECHA1=XXXXXXXXXX, podrás sobreescribir el espacio de la X.

    viernes, 29 de abril de 2011 13:11
  • Buenos Dias, yo manejo archivos de configuracion que creo que es lo que estas haciendo, con archivos XML, donde te facilita ubicar parametros ( Nodos ), para asignarle sus valores, de esta forma si quieres agregar valores nuevos, puedes encontrar tus parametros o nodos sin problema. Sin necesidad de depender de la ubicacion de la linea.

    Enlace de como Trabajar con XML

    http://www.developer.com/net/csharp/article.php/3489611/Manipulate-XML-File-Data-Using-C.htm

    http://www.java2s.com/Tutorial/CSharp/0540__XML/ReadWriteXmldocumentwithFileStream.htm 

    http://www.devjoker.com/contenidos/C/29/Como-leer-XML-con-C.aspx

    Saludos.


    DCE 2005 : 5 Estrellas Platino
    viernes, 29 de abril de 2011 13:55
  • Saludos un millon de gracias por la informacion pude resolverlo gracias
    try { Aprender C#; return Aprender C#; } catch { Jamas me Rendire null; } finally { Lo hare; }
    • Propuesto como respuesta Markos Ayala martes, 4 de diciembre de 2012 22:47
    miércoles, 4 de mayo de 2011 11:53
  • Saludos Luis como lo hiciste estoy en lomismo de la conexion en el archivo de texto me puedes ayudar con el codigo.
    martes, 4 de diciembre de 2012 22:48