'
' vbs - legge un file Metel ed estrae, in un file di testo, solo
' gli articoli inseriti nel file trova.txt
' esempio struttura file trova.txt:
' 4878
' 4881
' 54776
' 50264
'
option explicit
'
Const ForReading = 1 'Apre un file in lettura.
dim filelistinometel, filerisultato, filericercati, dovescrivere, messaggio
Dim fso, ftrovati, fleggi, articolodatrovare, memorizzati(), contali, quanti, conta
Set fso = CreateObject("Scripting.FileSystemObject")
' === nome dei file da utilzzare
filelistinometel = "C:\LISTINOLSP.TXT" ' file listino metel
filericercati = "C:\trova.txt" ' file contenenti articoli da trovare
filerisultato = "C:\ttrovati.txt" ' file articoli corrispondenti
'
messaggio = ""
messaggio = messaggio & time & vbcrlf
'
'
Set dovescrivere = fso.CreateTextFile(filerisultato)
Set fleggi = fso.OpenTextFile(filericercati, ForReading, False)
'
' === carica in memoria il listino metel
quanti = 0
call Caricafile(filelistinometel)
'
' === per recuperare la testata del listino
call ricercadatato("METEL")
'
' === legge in memoria tutto il file
Do While fleggi.AtEndOfStream <> True
articolodatrovare = fleggi.ReadLine
call ricercadatato(articolodatrovare)
Loop
'
'
dovescrivere.close
fleggi.close
'
messaggio = messaggio & time & vbcrlf & "nr. articoli: " & quanti
msgbox messaggio
' ===
sub ricercadatato(articoloricercato)
Dim articolo, strdata, lunghezzaarticolo
lunghezzaarticolo = 19
for conta = 1 to quanti
strdata = memorizzati(conta)
articolo = left(strdata,lunghezzaarticolo)
if instr(articolo, articoloricercato) then
dovescrivere.WriteLine strdata
End If
next
'
end sub
' === memorizza in una array tutti gli articoli
Sub Caricafile(sFileName)
Dim fp, rigaletta
Set fp = fso.OpenTextFile( sFileName, ForReading, False)
Do While fp.AtEndOfStream <> True
rigaletta = fp.ReadLine
quanti = quanti + 1
redim preserve memorizzati(quanti)
memorizzati(quanti) = rigaletta
Loop
fp.Close
End Sub
'
'
Nessun commento:
Posta un commento