por favor ayuda

Cuestiones y dudas acerca de lenguajes de programación diversos.

Moderador: Moderadores

SJACH
Novat@
Mensajes: 4
Registrado: Mié Nov 03, 2010 1:27 am

por favor ayuda

Mensaje por SJACH » Mié Nov 17, 2010 4:44 am

tengo un programa en visual basic el cual me guarda la informacion que le introdusca en un bloc de notas, lo que pasa es que al guardar informacion me borra la informacion contenida anteriormente, pero lo que quiero y no se como hacer es que me guarde toda la informacion que le introdusca para que mas tarde la pueda consultar, GRACIAS. Aqui les dejo el codigo de mi boton para ver si alguien me puede ayudar :wink:
Dim savefile As Long
Open ("i:data.txt") For Output As #1
Write #1, Text1.Text
Write #1, Text2.Text
Write #1, Text3.Text
Write #1, Text4.Text
Write #1, Text5.Text
Write #1, Text6.Text
Close #1
MsgBox "los datos han sido guardados correctamente"

Avatar de Usuario
Pitufo
Administrador foro
Mensajes: 647
Registrado: Dom Dic 03, 2006 3:39 pm
Contactar:

Re: por favor ayuda

Mensaje por Pitufo » Mié Nov 17, 2010 12:12 pm

Si he entendido bien el problema que planteas, lo que no te gusta es que cada vez que ejecutas el programa, te vacía el archivo, sobrescribiendo los datos anteriores. Para que los nuevos datos se anexen a lso ya existentes en lugar de empezar de cero, cambia en la apertura del archivo Output por Append, quedando así:

Código: Seleccionar todo

Open ("i:data.txt") For Append As #1

SJACH
Novat@
Mensajes: 4
Registrado: Mié Nov 03, 2010 1:27 am

Re: por favor ayuda

Mensaje por SJACH » Jue Nov 18, 2010 4:40 am

Pitufo escribió:Si he entendido bien el problema que planteas, lo que no te gusta es que cada vez que ejecutas el programa, te vacía el archivo, sobrescribiendo los datos anteriores. Para que los nuevos datos se anexen a lso ya existentes en lugar de empezar de cero, cambia en la apertura del archivo Output por Append, quedando así:

Código: Seleccionar todo

Open ("i:data.txt") For Append As #1
ya lo probe y me funciono de maravilla GRACIAS, solo tengo una duda ¿ para que funciona Append ? :?: de verdad GRACIAS :D

Avatar de Usuario
Pitufo
Administrador foro
Mensajes: 647
Registrado: Dom Dic 03, 2006 3:39 pm
Contactar:

Re: por favor ayuda

Mensaje por Pitufo » Jue Nov 18, 2010 11:28 am

SJACH escribió:¿ para que funciona Append ? :?:
No entiendo la pregunta, append es el modo de apertura para escritura de un archivo secuencial, agregando los datos desde el final del archivo.

Consulta la documentación del comando open de la versión que utilices.

SJACH
Novat@
Mensajes: 4
Registrado: Mié Nov 03, 2010 1:27 am

Re: por favor ayuda

Mensaje por SJACH » Mié Nov 24, 2010 3:55 pm

ya esta me funciono muy bien gracias por todo pero ahora tengo otro problema :( lo que pasa es que nesesito borrar los registros que voy creando, para esto tengo un boton y en el tengo el siguiente codigo

Private Sub Command1_Click()
Dim nombre As String
Dim precio As String
Dim calidad As String
Open ("c:data.txt") For Input As #1
Open ("c:pasadata.txt") For Append As #2
Do While Not EOF(2)
Input #1, nombre
Input #1, precio
Input #1, calidad
If nombre = Text1.Text Then
Text1.Text = nombre
Text2.Text = precio
Text3.Text = calidad
End If
Close #1
Close #2
Kill ("c:data.txt")
MsgBox "los datos han sido borrados correctamente"
Loop
End Sub

espero y me puedan ayudar el error me lo marca en donde esta el "open" gracias por todo :D

Avatar de Usuario
Pitufo
Administrador foro
Mensajes: 647
Registrado: Dom Dic 03, 2006 3:39 pm
Contactar:

Re: por favor ayuda

Mensaje por Pitufo » Mié Nov 24, 2010 6:14 pm

Si intentas hacer sangrado en el código para aclarar el principio y final de las aperturas de archivos y bucles, verás que el anidado es incorrecto, al igual que sucede con el kill, que trata de eliminar un archivo abierto y múltiples veces además.

SJACH
Novat@
Mensajes: 4
Registrado: Mié Nov 03, 2010 1:27 am

Re: por favor ayuda

Mensaje por SJACH » Mié Nov 24, 2010 6:25 pm

Pitufo escribió:Si intentas hacer sangrado en el código para aclarar el principio y final de las aperturas de archivos y bucles, verás que el anidado es incorrecto, al igual que sucede con el kill, que trata de eliminar un archivo abierto y múltiples veces además.
Entonces como puedo hacer para borrar o eliminar un registro que ya realice anteriormente????

Responder