VB.net Prob lire première ligne de mon fichier avec mon progr

VB.net Prob lire première ligne de mon fichier avec mon progr - VB/VBA/VBS - Programmation

Marsh Posté le 14-11-2006 à 15:27:51    

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

Reply

Marsh Posté le 14-11-2006 à 15:27:51   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed