Ayuda VB

Hola, Tengo que leer un Archivo de texto (.txt), para determinar el numero de filas del mismo, ademas tengo que ir leyendo fila a fila para asignarle el valor de cada fila a una variable en un formulario de VB, si pueden ayudarme porque no se como hacerlo.. Gracias

1 respuesta

Respuesta
1
No veo por qué tiene que darte ningún error, prueba este código tal cual a ver si te funciona:
Dim variable(100) As String
Dim num_linea As Byte
num_linea = 0
Open "c:\Archivo.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, variable(num_linea) 'Mete lo que hay en esa línea del fichero de texto en la variable
num_linea = num_linea + 1 'Tienes el total de líneas del fichero
Loop
Close #1
A medida que va leyendo el fichero va metiendo en cada posición del array una línea del fichero.
Disculpa, probé el código y me sale el siguiente error: error de compilación, procedimiento sub o función no definido. Y me marca el error en la linea de código: Line Input #1, variable(num_linea)
Ok. Te estoy agradecido, lo probé y me funciono, lo que pasaba es que me di cuenta de que el array lo declaraba con un nombre y luego estaba escribiendo mal ese nombre.. disculpa las molestias..
En la línea de código donde metes el contenido de cada línea en la variable tienes que usar un array en lugar de un string:
Dim varible(100) As String 'String de 100 posiciones
y luego cambiar la línea por esta:
Line Input #1, variable(num_linea)
Así en cada posición del array tienes una línea del fichero y podrás guardarla más fácilmente en la base de datos...
Ok, mira lo probé pero me le asigna el contenido de todo el archivo de una sola vez a la variable, lo que necesito es que le asigne lo que tenga cada linea para poder almacenarlo en una bd, e ir recorriendo el archivo de fila en fila para tal fin, y el n° de linea me toma solo el valor de 1, mientras que debe tomar el n de filas que tiene el registro.. t agradezco las molestias.
Para leer un archivo de texto debes usar la instrucción Open For (Input o Output dependiendo si sólo quieres leer o escribir)
Un ejemplo:
Dim variable As String
Dim num_linea As Byte
num_linea = 0
Open App.Path & "\Archivo.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, variable 'Mete lo que hay en esa línea del fichero de texto en la variable
num_linea=num_linea + 1 'Tienes el total de líneas del fichero
Loop
Close #1

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas