Visual Basic - Escribir multiples lineas en un *.txt

Life is soft - evento anual de software empresarial
 
Vista:

Escribir multiples lineas en un *.txt

Publicado por Israel Baez (3 intervenciones) el 15/04/2005 20:24:58
Hola foro.

Cada vez que se genera un error en una aplicaccion que he creado, trato de escribir un mensaje en un archivo plano, pero lo que hace es que sustituye el mensaje anterior con los nuevos valores y se guarda solo una linea.

El codigo que utilizo es el siguiente:
NumCanal = FreeFile
Open sRutaFichero For Output As NumCanal
Print #NumCanal, sMensaje
Close NumCanal

Cual deberia ser la sintaxis a usar para que me guarde el valor de la variable sMensaje en una linea nueva??

Gracias por la ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Escribir multiples lineas en un *.txt

Publicado por Cesar Mendoza (20 intervenciones) el 17/04/2005 23:13:08
como yo te entendi tu pregunta creo que en lugar de poner la linea
Print #NumCanal, sMensaje
cambiala por la siguiente linea:
Write #NumCanal, sMensaje
de esta forma se escribira en tu archivo plano
Espero te sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Escribir multiples lineas en un *.txt

Publicado por Matías Freire (421 intervenciones) el 20/04/2005 01:19:48
Cesar e Israel...

el problema que tienen no es la instrucción que usan para escribir en el archivo (Print o Write) sino que el problema está en la forma que usan para abrirlo. en vez de usar "OUTPUT" deben utilizar "APPEND". De esta forma, si el archivo no existe, lo crea; y si el archivo existe, le agrega lo que le escribas.
Por lo tanto, tu código fuente debería quedar así:

NumCanal = FreeFile
Open sRutaFichero For Append As NumCanal
Print #NumCanal, sMensaje
Close NumCanal

La diferencia entre usar PRINT o WRITE, se da cuando uno quiere escribir más de una variable por línea. Con la primera, cada valor quedará escrito en el archivo separado por un TAB. Con la segunda, quedarán separados por comas. Ejemplo:

Dim Nombre as String
Dim Apellido as String
Dim Edad as Integer

Nombre = "Julio"
Apellido = "Perez"
Edad = 23

Open "Agenda.txt" For Append As #1
Print #1, Nombre, Apellido, Edad
' Esto en el archivo se vería como:
Julio Perez 23
Close #1

Open "Agenda.txt" For Append As #1
Write #1, Nombre, Apellido, Edad
' Esto en el archivo se vería como:
"Julio","Perez",23
Close #1

Como verán, la instrucción Write también separa entre String (poniendoles comillas) e Integer (los cuales quedan tal cual).
Espero que esto les haya servido. Saludos!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar