Fusionner (merger) plusieurs fichiers en un seul

Soyez le premier à donner votre avis sur cette source.

Snippet vu 14 061 fois - Téléchargée 8 fois

Contenu du snippet

'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 FunctionBy Renfield

Compatibilité : VB 2005

Disponible dans d'autres langages :

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.