Bonjour tout le monde!!!
J'ai une question concernant mon programme : en fait je possède des centaine et des centaines de fichier .log, qui s'ajoutent dans mon répertoire toute les heures avec un nom de fichiers différents. Mon prog doit aller lire les lignes une par une dans mon fichier et ensuite crée un fichier avec non plus les heures, mais le jour de l'heure et les données qui se trouvent dans ses fichiers "jour".. je m'explique au début j'ai 24 fichiers par jour et je dois mettre toutes les données de ses 24 fichiers dans une nouveau fichier qui aura comme nom la date de ces heures. Mon programme me copie toutes les lignes du fichier "heure" au fichier "date", mais pas la première ligne et je comprends pas pourquoi.. Merci de répondre c'est urgent... je vous remets mon code :
Dim
sr As StreamReader
Dim lignebrut AsString
Dim fichiercdr AsString
Dim fdate AsString
Dim lesfichier As ArrayList
Dim dossier As System.IO.Directory
Dim tabDossier AsString()
Dim dir AsString
Dim sw As StreamWriter
Dim fichierexist AsString
Dim lignecours AsString
Dim lignepreced AsString
Dim datencours AsString' la ligne en cours du fichier
Dim datepreced AsString' la ligne qui precède la ligne en cours
Dim temp AsString' temporaire
Try
tabDossier = dossier.GetFiles("D:\mrs-tools\dossier_cdr_en_log" )
lesfichier =
New ArrayList(tabDossier.Length)
fichiercdr = "D:\mrs-tools\dossier_cdr_en_log\cdr*.log"
ForEach dir In tabDossier
lesfichier.Add(dir)
sr =
New StreamReader(dir)
lignebrut = sr.ReadLine()
fichierexist = Mid(dir, 33, 8)
WhileNot lignebrut = ""
lignebrut = sr.ReadLine()
fdate = Mid(lignebrut, 29, 8)
datencours = fdate
If datencours = fichierexist Then
ExitWhile
EndIf
sw =
New StreamWriter("D:\mrs-tools\dossier_cdr_en_log\" & datencours & ".log", True)
If (datencours >= datepreced) Then
sw.WriteLine(lignebrut)
EndIf
sw.Close()
EndWhile
IfNot IsNothing(sr) Then sr.Close()
Next dir
Kill(fichiercdr)
If File.Exists("D:\mrs-tools\dossier_cdr_en_log\.log" ) Then
Kill("D:\mrs-tools\dossier_cdr_en_log\.log" )
EndIf
If File.Exists("D:\mrs-tools\dossier_cdr_en_log\0709,043.log" ) Then
Kill("D:\mrs-tools\dossier_cdr_en_log\0709,043.log" )
EndIf
Application.Exit()
Catch
EndTry