La programación VB extrae los datos del texto para generar una matriz y la guarda
Puede elegir abrir/guardar archivos usted mismo. Primero puede consultar el control Microsoft Comm Dialgo Control 6.0.
Los siguientes datos son privados al abrir el cuadro de selección de archivos. strData?as?string'
Privado?Sub?Command1_Click()'Seleccionar archivo
On?Error?GoTo?err
CommonDialog1.FileName?=? ""
CommonDialog1.Filter?=?"*.mca|*.mca|*.*|*.*"
CommonDialog1.CancelError?=?True
CommonDialog1.ShowOpen' Abre el cuadro de diálogo de selección de archivos
If?CommonDialog1.FileName?<>?""?Then
Text1.Text=?CommonDialog1.FileName'selected nombre de archivo
GetData(Text1.Text)'Extraer datos
Fin?Si
err:
Fin?Sub
El siguiente es el archivo DialogPrivate?Sub?Command2_Click()
On?Error?GoTo?err
CommonDialog1.FileName?=?""
CommonDialog1.Filter? =?"*.mca|*.mca|*.*|*.*"
CommonDialog1.CancelError?=?True
CommonDialog1.ShowSave 'Abra el cuadro de diálogo para guardar el archivo
Si?CommonDialog1.FileName?<>?""?Entonces
Text2.Text=?CommonDialog1.FileName'El nombre del archivo guardado
'El siguiente archivo está guardado Código
dim?intFNo?as?long
open?Text2.Text?for?Output?as?#intFno
imprimir?#intFno,strD? '¿Guardar en archivo?
¿Cerrar?#intFno
¿Fin?Si
err:
End?Sub
Extraer código de datos de texto: private?sub?GetData(byval?strFile?as?string)
dim?intFNo?as?long
dim?strD?as?string
dim?isData?as?Boolen
dim?lngIndex?as?Long?
strData?=space( 100000)' Solicite memoria con anticipación, que debe ser mayor que el máximo 2 veces la cantidad de datos, porque hay un punto y coma (;) después de los datos
intFno=freefile
open?strfile?for?Input?as?#intFno
lngIndex?=1
do? while?Not?Eof(intFno)
línea? input?#intFno,strD
si?isData ?entonces
si?strD<>"<
mid(strData? ,lngÍndice
?,len(Trim(strd))+1)=trim(strD)?&?";"'Extraer datos
'El formato de los datos es: data;data;data;data;
'Si desea convertir a datos: bytd=split(strdata,";")
lngIndex?=lngIndex?+len(Trim(strd))+1
else
msgbox?"Extracción de datos completada, guarde"
exit?do
end?if
else p>
if?strD="<>"?entonces
isData=True
end?if
end?if?
Bucle
cerrar?#intFno
end?sub