1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| Option Explicit
Const ForWriting = 2, ForReading = 1, ForAppending = 8
Dim objFSO, fic1, fic2, fic1_op, fic2_op, fic1_rl, fic2_rl, SortieSansErreur
fic1 = "FICHIER1.TXT"
fic2 = "FICHIER2.TXT"
SortieSansErreur = True
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set fic1_op = objFSO.OpenTextFile(fic1,ForReading)
Do
fic1_rl = fic1_op.ReadLine
Set fic2_op = objFSO.OpenTextFile(fic2,ForReading)
Do
fic2_rl = fic2_op.ReadLine
Loop Until fic2_op.AtEndOfStream = True Or fic2_rl = fic1_rl
Set fic2_op = Nothing
If Not fic2_rl = fic1_rl Then
WScript.echo "Le nombre " & fic1_rl & " de " & fic1 & " n'a pas été trouvé dans " & fic2
SortieSansErreur = False
End If
Loop Until fic1_op.AtEndOfStream = True 'Or Not fic1_rl = fic2_rl 'Pour sortir de la boucle directement en cas de nombre présent dans fic1 inexistant dans fic2
Set fic1_op = Nothing
'Attention, il n'y a pas de vérification que tous les nombres présents dans fic2 soient effectivement présents dans fic1,
'la comparaison se limite à vérifier que tous les nombres dans fic1 sont bien présents dans fic2 !
If SortieSansErreur Then
WScript.echo "Toutes les lignes de " & fic1 & " sont bien présentes dans " & fic2
Else
WScript.echo "Il y a au-moins une ligne de " & fic1 & " qui n'est pas présente dans " & fic2
End If
Set objFSO = Nothing
WScript.quit |
Partager