manejo de ficheros en vb

Grishnackh
17 de Febrero del 2005
n1 = FreeFile
Open "prueba.txt" For Input As #n1
Close #n1
estoy utlizando ese codigo, pero el archivo no abre.
¿Que hago?

Enviar
17 de Febrero del 2005
Creo Que Te Has Dejado La Direccion Del Archivo

private Sub Form_Load()
dim Ruta as String,GetLine as String
Ruta ="C: Prueva.txt" 'Direccion Y Nombre Fichero
on error Goto SubError
Open Ruta for input As #1
Do until EOF(1)
input line #1 , GetLine
loop
Close #1
exit sub
SubError:
msgbox err.Description
end sub

eth0
17 de Febrero del 2005
Un par de comprobaciones:

1. ¿El fichero existe?
2. ¿El fichero se encuentra en el directorio de trabajo?

en?
17 de Febrero del 2005
Grishnackh:
El código que usas sólo abre el fichero y lo vuelve a cerrar.
Dispones de varias formas para leer un fichero abierto en modo «Input»:
- Input (Función)
- Input # (Instrucción)
- Line Input # (Instrucción)

Cuando abres un fichero en modo lectura, el fichero debe existir o se generará un Error.
Como no le indicas la ruta completa, la función lo busca en el directorio actual, o sea, la ruta devuelta por la función CurDir.
Para evitarte los problemas que te puedan surgir, pásale siempre la ruta completa, o bién cambia manualmente el directorio actual con la función ChDir.

Para evitar el error de acceso al fichero, lo otro que necesitarías implementar es la verificación de que el fichero especificado existe, para eso usa la función Dir, ejemplo:

If Dir(RUTA_FICHERO) = "" Then
msgbox "no existe"
else
Open ...bla bla bla
end if

__
Un saludo.