'exemple d'utilisation
'en passant plusieurs fichier
MessageBox.Show (MergeFiles(False, "C:\Test.txt", True, "C:\Checkplus\Chkp.dat", "C:\Checkplus\Alarm.dat").ToString)
'en passant un répertoire
MessageBox.Show (MergeFiles(False, "C:\Test.txt", True, "C:\Checkplus\").ToString)
Public Function MergeFiles(ByVal bDestroy As Boolean, ByVal sDestFile As String, ByVal ClearIfExists As Boolean, ByVal ParamArray aSrcFiles() As String) As Integer
Dim FNames As String()
Dim FReader As StreamReader
Dim NbrMerged As Integer = 0
'Tableau vide, on sort sans rien faire
If aSrcFiles.Length = 0 Then Return NbrMerged
'si on souhaite repartir d'un fichier vierge
If ClearIfExists And File.Exists(sDestFile) Then File.Delete (sDestFile)
'suivant le cas on remplis les nom de fichiers avec soit
If Directory.Exists(aSrcFiles(0)) Then
'1= les fichiers contenus dans le répertoire
FNames = Directory.GetFiles(aSrcFiles(0))
Else
'2= les fichiers passés en parametres
FNames = aSrcFiles
End If
For Each Fpath As String In FNames
'Si le fichier source existe
If File.Exists(Fpath) Then
'on le charge
FReader = File.OpenText(Fpath)
'on le place à la fin du fichier de destination
File.AppendAllText(sDestFile, FReader.ReadToEnd)
'On le supprime si nécessaire
If bDestroy Then File.Delete (Fpath)
'on incrément le nombre de fichiers traité
NbrMerged += 1
End If
Next
Return NbrMerged
End Function
|
| By Renfield |