Sobre archivos de texto ".txt"

Iniciado por under!!!, 27 Agosto 2007, 17:49 PM

0 Miembros y 2 Visitantes están viendo este tema.

under!!!

Hola y de antemano gracias.

Tengo el siguiente codigo para crear un archivo ".txt"
Código (vb) [Seleccionar]

Dim fso, tf
Set fso = CreateObject("Scripting.FileSystemObject")
Set tf = fso.CreateTextFile("C:\Prueba1.txt", True)
tf.WriteLine "HOLA"
tf.Close

Pero el problema es que si vuelvo a correr el programa se vuelve a crear el archivo y lo que a mi me gustaria es que lo abra y siga escrbriendo en el. Alguien sabe como.

Gracias ;D

kichan

la forma de abrir el azrchivo no es la correcta
deber abrirlo en forma de apped.
es decir..abrir para actualizar la informacion.
claro, que con la FileSystemObject..no me manejo mucho
asi que no se que atributo hayt que darle al archivo para que no se reescriba
con apis.es relativamente facil..

~~

Por q no usas open en vez de FileSystemObject?? a mi por lo menos me parece mas sencillo  :xD

kichan

o por que no usas la api
CreateFile ...  ?
ami me resulta mas facil..
lo unico que hay que declararla
pero si pones el archivo winnt .
ni eso..

:D

Spider-Net

#4
Para crear un archivo no es más fácil hacer esto??

Código (vb) [Seleccionar]
Sub Crear_Archivo()

Open ("C:\Prueba.txt") For Append As #1,
   Print #1, "El texto que quieras"
   Close #1

End Sub

Se agregará lo que escribas al nuevo archivo, no se sustituirá como dices que te ocurre ahora ;)

Saludos.

kichan

Claro la clave como te decia yo antes es esto

For Append As #1,
la forma en que abres el archivo
con eso le indicamos al VB:
que lo abra para agregar informacion y no para reescribirlo ni suplantarlo.


cobein

Una buena idea es no usar FSO ya este no funciona en todos los sistemas, es mejor usar VB code o si queres velocidad API.

Un comentario, vi que en todos los ejemplos que tratan archivos usan #1, esto es mas facil pero si lo pueden evitar ej: dim iMyFile as integer, iMyfile =freefile, les va ha ahorrar muchos dolores de cabeza.
http://www.advancevb.com.ar
Más Argentino que el morcipan
Aguante el Uvita tinto, Tigre, Ford y seba123neo
Karcrack es un capo.

under!!!

Y como puedo hacer la comparacion si el archivo ya existe. Ya que me gustaria hacer algo asi.
Código (vb) [Seleccionar]

if "existe el archivo" then
   que esciba en el archivo
else
   que lo cree y escriba en el archivo
end if


De antemano gracias

Red Mx

Es bonito que te digan pero asi no vas a aprender mira te la pongo facil

http://www.recursosvisualbasic.com.ar/htm/tutoriales/tutorial-basico7.htm

cuando termines de leer , seras un maestro para manejo de archivos en VB
Desarrollar Malware Es Causa De Cancer...

under!!!

#9
Oye gracias esta buenisimo el Tutorial y de pasada vi muchos mas, ya encontre la solucion a mi problema, pongo el codigo y la explicacion para los que entren a leer el tema.

Código (vb) [Seleccionar]

Dim mun As Integer
num = FreeFile
Open "C:\bb.txt" For Append As num
Print #num, "Hola"
Close


NOTA[/b][/color]

Si el archivo de texto no existe, lo genera y escribe en el, si ya existe comienza a introducir datos al final del mismo, y si el archivo ya existe pero esta vacio, solo escribe en el.
Con esto no hay necesidad de hacer la comaracion.
De nuevo muchas gracias.