Mi problema es el siguiente:
Tengo un archivo TXT con los siguientes registros:
Citar
Dato1|Dato2|Dato3|Dato4|
Dato5|Dato6|Dato7|Dato8|
Como notan, este archivo se conforma de dos registros, los cuales contienen 4 campos cada uno (en realidad difiere en la cantidad de campos por registro, pero con esto basta); mi problema es que deseo extraer dichos campos del primer registro a una tabla previamente creada por mí en MySQL, lo mismo es para el segundo registro, el problema aquí es que no llego a visualizar el cómo lo puedo hacer. Espero me puedan ayudar con esto.
Nota: Las tablas y las BD las crearé en tiempo de ejecución, las BD con un nombre predefinido y el nombre de las tablas tomando como referencia el primer dato del registro. Los datos están divididos por "pipes" (|).
abres el archivo de texto y lee linea a linea
dim strCampos() as string,strTextoLinea as string,A as long
strCampos()=split(strTextoLinea,"|")
for a=0 to ubound(strCampos)-1
strDato=strcampo(a)
next a
Cita de: maxnet en 1 Septiembre 2006, 23:03 PM
abres el archivo de texto y lee linea a linea
dim strCampos() as string,strTextoLinea as string,A as long
strCampos()=split(strTextoLinea,"|")
for a=0 to ubound(strCampos)-1
strDato=strcampo(a)
next a
¡Funcionó a la perfección! ¡Gracias maxnet!
Aquí dejo el código modificado por si les interesa:
Public Sub OPenFile()
Dim strCampos() As String, strTextoLinea As String, _
Archivo As String
Dim A As Long
Dim NumArchivo As Integer
Archivo = txtRutaLocal.Text & txtNomArchivo.Text
NumArchivo = FreeFile()
Open Archivo For Input As #NumArchivo
Do While Not EOF(NumArchivo)
Line Input #NumArchivo, strTextoLinea
strCampos() = Split(strTextoLinea, "|")
'MsgBox strCampos(0) 'AQUÍ SE CONOCE EL PRIMER REGISTRO
'AQUÍ SE CREA LA BD CON EL NOMBRE DEL ARCHIVO
'AQUÍ SE CREA LA TABLA CON EL NOMBRE DEL DATO 0
For A = 0 To UBound(strCampos) - 1
strDato = strCampos(A)
MsgBox strDato
'AQUÍ SE INSERTAN LOS DATOS EN DICHA TABLA
Next A
Loop
Close #NumArchivo
End Sub
Los Objetos txtRutaLocal.Text y txtNomArchivo.Text son dos cuadros de texto que contienen la ruta y el nombre del archivo (pueden sustituirse por "C:\Archivo.txt")