const FOLDER1 = « c:\temp\f1 »
const FOLDER2 = « c:\temp\f2 »
const LOG_FILE = « c:\temp\output.log »
Placer le fsoLog = le CreateObject (« Scripting.FileSystemObject »)
placer l'objLog = le fsoLog.CreateTextFile (LOG_FILE, 2)
obscurcir le nom de fichier, compFileName
strComputer = « . »
Placer l'objWMIService = le GetObject (« winmgmts : {impersonationLevel=impersonate} ! \ \ » et strComputer et « \ racine \ cimv2 »)
Placer FileList = objWMIService.ExecQuery (« ASSOCIATORS DE {Win32_Directory.Name='" et FOLDER1 et « '} où ResultClass = CIM_DataFile »)
Pour chacun objFile dans FileList
Si objFile.Extension = « csv » puis
nom de fichier = objFile.Drive et objFile.Path et objFile.FileName et « . » et « csv »
compFileName = FOLDER2 et « \ » et objFile.FileName et « . » et « csv »
s'IsFileExists (compFileName) puis
Nom de fichier de CompareCsvFile, compFileName
finir si
Finir si
Après
objLog.Close
placer l'objLog = rien
placer le fsoLog = rien
fonction IsFileExists (nom de fichier)
FAIBLE fso
Placer le fso = le CreateObject (« Scripting.FileSystemObject »)
Si (fso.FileExists (nom de fichier)) Puis
IsFileExists=true
Autrement
IsFileExists=false
Finir si
Finir la fonction
substrater CompareCsvFile (nom de fichier, compFileName)
obscurcir fs, objTextFile, data1, data2
placer fs = CreateObject (« Scripting.FileSystemObject »)
obscurcir l'arrStr, col_values1, col_values2, arr1, arr2
placer objTextFile = fs.OpenTextFile (le nom de fichier)
'lire les données de la colonne 5 à partir du premier dossier de csv
Faire tandis que PAS objTextFile.AtEndOfStream
l'arrStr = s'est dédoublé (objTextFile.ReadLine, « , ")
si UBound (arrStr) < 4="" then="" outputLogResult="" fileName=""> UBound (arr2) puis
nom de fichier d'outputLogResult, compFileName, faux
sortir le sous-marin
finir si
Pour le compte = 0 à UBound (arr1)
'vérifier si les données sont identiques
data1=arr1 (compte)
data2=arr2 (compte)
si data1 <> data2 alors
nom de fichier d'outputLogResult, compFileName, faux
sortir le sous-marin
finir si
Après
objTextFile réglé = rien
placer fs = rien
nom de fichier d'outputLogResult, compFileName, vrai
Sous-marin d'extrémité
outputLogResult secondaire (nom de fichier, compFileName, résultat)
si le résultat = rectifient alors
dossiers identiques d'objLog.WriteLine « : »
autrement
dossiers d'objLog.WriteLine « Unidentical : »
finir si
nom de fichier d'objLog.WriteLine
compFileName d'objLog.WriteLine
objLog.WriteLine
sous-marin d'extrémité
|