IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Récuperation nom et contenu de fichier texte [Batch]


Sujet :

Scripts/Batch

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2016
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 9
    Points : 9
    Points
    9
    Par défaut Récuperation nom et contenu de fichier texte
    Bonjour, je voudrais récupérer le nom et le contenu de plusieurs fichiers texte situé dans un même dossier et les coller dans un nouveau fichier texte.
    j'arrive à récupérer tous le contenu des différents fichiers texte et les mettre dans un nouveau fichier texte avec la commande suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for /r "C:\MonRep\" %%i in (*.txt) do for /f "delims=" %%j in ('type "%%i"') do echo %%j>> Resultat.txt
    Est-il possible à partir du même fichier batch de récupérer le nom des fichiers et de les copier avant leur contenu?

    Merci d'avance

    François

  2. #2
    Membre expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Points : 3 768
    Points
    3 768
    Par défaut
    Salut,

    Ta question n'est pas très clair, mais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    @echo off&cls
    set "$Path=C:\MonRep\"
    
    for /f "delims=" %%a in ('dir /b /a-d "%$Path%"\*.txt') do (
       echo contenu de %%a :
       type %%a)
    ________________________________
    Un p'tit coup de pouce ça fait toujours plaisir, pensez-y !
    ________________________________

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2016
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 9
    Points : 9
    Points
    9
    Par défaut
    Bonjour et merci pour ta réponse , mais j'ai essayé et celà ne marche pas. Que dois-je trouver?
    Pour être plus précis dans ma demande, voilà ce que je voudrais faire :
    Dans un repertoire, j'ai disons 3 fichiers texte nommés a.txt, b.txt et c.txt. Dans le fichier a.txt, j'ai 12345, dans le fichier b.txt, j'ai abcd et dans le fichier c.txt, j'ai ab12.
    Je voudrais récupérer les noms de fichiers et leurs contenu dans un fichier resultat.txt. Je joins en pièce jointe la structure du fichier que je voudraids récupérer.

    Merci encore

    François
    Fichiers attachés Fichiers attachés

  4. #4
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 839
    Points : 9 222
    Points
    9 222
    Par défaut
    Citation Envoyé par garfield1701 Voir le message
    Bonjour et merci pour ta réponse , mais j'ai essayé et celà ne marche pas. Que dois-je trouver?
    Pour être plus précis dans ma demande, voilà ce que je voudrais faire :
    Dans un repertoire, j'ai disons 3 fichiers texte nommés a.txt, b.txt et c.txt. Dans le fichier a.txt, j'ai 12345, dans le fichier b.txt, j'ai abcd et dans le fichier c.txt, j'ai ab12.
    Je voudrais récupérer les noms de fichiers et leurs contenu dans un fichier resultat.txt. Je joins en pièce jointe la structure du fichier que je voudraids récupérer.

    Merci encore

    François

    Solution in Vbscript
    Code VB : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    Option Explicit
    Dim LogFile,SourceFolder,objFSO,Ws
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    LogFile = Left(Wscript.ScriptFullName,InstrRev(Wscript.ScriptFullName, ".")) & "txt"
    if objFSO.FileExists(LogFile) Then 'Si le fichier LogFile existe 
        objFSO.DeleteFile LogFile 'alors on le supprime
    end If
    SourceFolder = Browse4Folder()
    Call Scan4Folder(SourceFolder)
    MsgBox "The script is finished by Hackoo !",VbInformation,"The script is finished by Hackoo !"
    Set Ws = CreateObject("wscript.shell")
    ws.run DblQuote(LogFile)
    '**************************************************************************
    Function Browse4Folder()
        Dim objShell,objFolder,Message
        Message = "Please select a folder "
        Set objShell = CreateObject("Shell.Application")
        Set objFolder = objShell.BrowseForFolder(0,Message,0,0)
        If objFolder Is Nothing Then
            Wscript.Quit
        End If
        Browse4Folder = objFolder.self.path
    End Function
    '*********************************************************************
    Function Scan4Folder(Folder)
        Dim fso,objFolder,File
        Dim Tab,aFile,FileName,Contenu,TXT_Copied
        Set fso = CreateObject("Scripting.FileSystemObject")
        Set objFolder = fso.GetFolder(Folder)
        For Each File in objFolder.Files
            If UCase(fso.GetExtensionName(File)) = "TXT" And File.Size <> 0 Then
                FileName = File.Name'fso.GetBaseName(File)
                Contenu = ReadFile(File,"all") 
                TXT_Copied = TXT_Copied & DblQuote(FileName) & vbCrLf & Contenu & vbCrLf & vbCrLf
    'Msgbox "The File " & DblQuote(FileName) & " is copied on " & vbCrLf &_
    'DblQuote(Contenu),vbInformation,DblQuote(File)         
            End If  
        Next
        Call WriteFile(TXT_Copied,LogFile)
    End Function
    '*********************************************************************
    Function DblQuote(Str)
        DblQuote = Chr(34) & Str & Chr(34)
    End Function
    '*********************************************************************
    Function ReadFile(path,mode)
        Const ForReading = 1
        Dim objFSO,objFile,i,contents
        Set objFSO = CreateObject("Scripting.FileSystemObject")
        Set objFile = objFSO.OpenTextFile(path,ForReading)
        If mode = "byline" then
            Dim arrFileLines()
            i = 0
            Do Until objFile.AtEndOfStream
                Redim Preserve arrFileLines(i)
                strLine = objFile.ReadLine
                strLine = Trim(strLine)
                If Len(strLine) > 0 Then
                    arrFileLines(i) = strLine
                    i = i + 1
                    ReadFile = arrFileLines
                End If    
            Loop
            objFile.Close
        End If
        If mode = "all"  Then
            contents = objFile.ReadAll
            ReadFile = contents
            objFile.Close
        End If
    End Function
    '*****************************************************************
    'Fonction pour écrire le résultat dans un fichier texte
    Sub WriteFile(strText,LogFile)
        Dim fs,ts 
        Const ForAppending = 8
        Set fs = CreateObject("Scripting.FileSystemObject")
        Set ts = fs.OpenTextFile(LogFile,ForAppending,True)
        ts.WriteLine strText
        ts.Close
    End Sub
    '*****************************************************************

  5. #5
    Membre expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Points : 3 768
    Points
    3 768
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    @echo off
    setlocal enabledelayedexpansion
    
    (for %%a in (*.txt) do (
      echo %%~nxa
      for /f "delims=" %%b in (%%a) do echo %%b
      echo.
    ))>sortie.log
    ________________________________
    Un p'tit coup de pouce ça fait toujours plaisir, pensez-y !
    ________________________________

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2016
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 9
    Points : 9
    Points
    9
    Par défaut
    Bonjour et merci,
    hackoofr, j'ai essayé avec VB6 et lorsque je veux le tester,il me mets un message "Erreur de compilation", le curseur mets Set en surbrillance (3ème ligne) et j'ai la ligne "Dim Tab,aFile,FileName,Contenu,TXT_Copied" qui est en rouge.

    sachadee, j'ai essayé, ça marche , mais peut-on supprimer dans le fichier log le texte
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    "D:\Public\test>(
    echo a.txt  
     for /F "delims=" %b in (a.txt) do echo %b  
     echo.
    ) "
    en début de fichier et avant chaque contenu de fichier (voir pièce jointe)

    Merci encore à vous deux
    Fichiers attachés Fichiers attachés

  7. #7
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 839
    Points : 9 222
    Points
    9 222
    Par défaut
    Citation Envoyé par garfield1701 Voir le message
    Bonjour et merci,
    hackoofr, j'ai essayé avec VB6 et lorsque je veux le tester,il me mets un message "Erreur de compilation", le curseur mets Set en surbrillance (3ème ligne) et j'ai la ligne "Dim Tab,aFile,FileName,Contenu,TXT_Copied" qui est en rouge.
    Copier et coller le code directement dans le notepad et enregistrer sous le nom hackoo.vbs puis exécuter le par double clic

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2016
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 9
    Points : 9
    Points
    9
    Par défaut
    Merci hackoofr, nickel, par contre j'ai une autre question, peut-on directement dans le script renseigner le chemin d'accès au dossier que l'on veux lister (ex C:\Dataexports\notes).

    Merci encore

    François

  9. #9
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 839
    Points : 9 222
    Points
    9 222
    Par défaut
    Citation Envoyé par garfield1701 Voir le message
    Merci hackoofr, nickel, par contre j'ai une autre question, peut-on directement dans le script renseigner le chemin d'accès au dossier que l'on veux lister (ex C:\Dataexports\notes).
    Merci encore
    François

    Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    Option Explicit
    Dim LogFile,SourceFolder,objFSO,Ws
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    LogFile = Left(Wscript.ScriptFullName,InstrRev(Wscript.ScriptFullName, ".")) & "txt"
    if objFSO.FileExists(LogFile) Then 'Si le fichier LogFile existe 
        objFSO.DeleteFile LogFile 'alors on le supprime
    end If
    SourceFolder = "C:\Dataexports\notes"
    'msgbox SourceFolder
    Call Scan4Folder(SourceFolder)
    MsgBox "The script is finished by Hackoo !",VbInformation,"The script is finished by Hackoo !"
    Set Ws = CreateObject("wscript.shell")
    ws.run DblQuote(LogFile)
    '**************************************************************************
    Function Browse4Folder()
        Dim objShell,objFolder,Message
        Message = "Please select a folder "
        Set objShell = CreateObject("Shell.Application")
        Set objFolder = objShell.BrowseForFolder(0,Message,0,0)
        If objFolder Is Nothing Then
            Wscript.Quit
        End If
        Browse4Folder = objFolder.self.path
    End Function
    '*********************************************************************
    Function Scan4Folder(Folder)
        Dim fso,objFolder,File
        Dim Tab,aFile,FileName,Contenu,TXT_Copied
        Set fso = CreateObject("Scripting.FileSystemObject")
        Set objFolder = fso.GetFolder(Folder)
        For Each File in objFolder.Files
            If UCase(fso.GetExtensionName(File)) = "TXT" And File.Size <> 0 Then
                FileName = File.Name'fso.GetBaseName(File)
                Contenu = ReadFile(File,"all") 
                TXT_Copied = TXT_Copied & DblQuote(FileName) & vbCrLf & Contenu & vbCrLf & vbCrLf
    'Msgbox "The File " & DblQuote(FileName) & " is copied on " & vbCrLf &_
    'DblQuote(Contenu),vbInformation,DblQuote(File)         
            End If  
        Next
        Call WriteFile(TXT_Copied,LogFile)
    End Function
    '*********************************************************************
    Function DblQuote(Str)
        DblQuote = Chr(34) & Str & Chr(34)
    End Function
    '*********************************************************************
    Function ReadFile(path,mode)
        Const ForReading = 1
        Dim objFSO,objFile,i,contents
        Set objFSO = CreateObject("Scripting.FileSystemObject")
        Set objFile = objFSO.OpenTextFile(path,ForReading)
        If mode = "byline" then
            Dim arrFileLines()
            i = 0
            Do Until objFile.AtEndOfStream
                Redim Preserve arrFileLines(i)
                strLine = objFile.ReadLine
                strLine = Trim(strLine)
                If Len(strLine) > 0 Then
                    arrFileLines(i) = strLine
                    i = i + 1
                    ReadFile = arrFileLines
                End If    
            Loop
            objFile.Close
        End If
        If mode = "all"  Then
            contents = objFile.ReadAll
            ReadFile = contents
            objFile.Close
        End If
    End Function
    '*****************************************************************
    'Fonction pour écrire le résultat dans un fichier texte
    Sub WriteFile(strText,LogFile)
        Dim fs,ts 
        Const ForAppending = 8
        Set fs = CreateObject("Scripting.FileSystemObject")
        Set ts = fs.OpenTextFile(LogFile,ForAppending,True)
        ts.WriteLine strText
        ts.Close
    End Sub
    '*****************************************************************

  10. #10
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2016
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 9
    Points : 9
    Points
    9
    Par défaut
    Encore Merci hackoofr, c'est exactement ce don't j'avais besoin.

    Bonne journée

    François

  11. #11
    Membre expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Points : 3 768
    Points
    3 768
    Par défaut
    Salut,

    j'ai effectivement oublié le


    En début de code

    ________________________________
    Un p'tit coup de pouce ça fait toujours plaisir, pensez-y !
    ________________________________

  12. #12
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 839
    Points : 9 222
    Points
    9 222
    Par défaut
    Citation Envoyé par garfield1701 Voir le message
    Encore Merci hackoofr, c'est exactement ce don't j'avais besoin.
    Bonne journée
    François
    Tant mieux pour vous
    N'oubliez pas de marquer cette discussion comme
    Bonne journée

  13. #13
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 839
    Points : 9 222
    Points
    9 222
    Par défaut

    Juste une petite mise en forme de la solution de Sacha +1
    Code BAT : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    @echo off
    Title Recuperation nom et contenu de fichier texte by Sacha
    mode con:cols=60 lines=2 & COLOR 0b
    echo        Veuillez patienter un peu traitement en cours ...
    setlocal enabledelayedexpansion
    (for %%a in (*.txt) do (echo "%%~nxa"
            for /f "delims=" %%b in ('Type "%%a"') do echo %%b
            echo.)
    )>sortie.log
    start "" sortie.log

  14. #14
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2016
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 9
    Points : 9
    Points
    9
    Par défaut
    Merci hackoofr, la j'ai l'embarras du choix!!
    Merci encore

  15. #15
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2016
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 9
    Points : 9
    Points
    9
    Par défaut
    Je reviens vers vous car à l'usage j'aimerais une petite amelioration. J'utilise le vbs de hackoofr et je voudrais savoir si il est possible d'exclure de la recherché un fichier précis (liste.txt)

    Merci d'avance

    François

  16. #16
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 839
    Points : 9 222
    Points
    9 222
    Par défaut
    Citation Envoyé par garfield1701 Voir le message
    Je reviens vers vous car à l'usage j'aimerais une petite amelioration. J'utilise le vbs de hackoofr et je voudrais savoir s'il est possible d'exclure de la recherché un fichier précis (liste.txt)
    Merci d'avance
    François

    Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    Option Explicit
    Dim LogFile,SourceFolder,objFSO,Ws
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    LogFile = Left(Wscript.ScriptFullName,InstrRev(Wscript.ScriptFullName, ".")) & "txt"
    if objFSO.FileExists(LogFile) Then 'Si le fichier LogFile existe 
        objFSO.DeleteFile LogFile 'alors on le supprime
    end If
    SourceFolder = "C:\Dataexports\notes"
    'msgbox SourceFolder
    Call Scan4Folder(SourceFolder)
    MsgBox "The script is finished by Hackoo !",VbInformation,"The script is finished by Hackoo !"
    Set Ws = CreateObject("wscript.shell")
    ws.run DblQuote(LogFile)
    '**************************************************************************
    Function Browse4Folder()
        Dim objShell,objFolder,Message
        Message = "Please select a folder "
        Set objShell = CreateObject("Shell.Application")
        Set objFolder = objShell.BrowseForFolder(0,Message,0,0)
        If objFolder Is Nothing Then
            Wscript.Quit
        End If
        Browse4Folder = objFolder.self.path
    End Function
    '*********************************************************************
    Function Scan4Folder(Folder)
        Dim fso,objFolder,File,Excluded_File
        Dim Tab,aFile,FileName,Contenu,TXT_Copied
        Set fso = CreateObject("Scripting.FileSystemObject")
        Set objFolder = fso.GetFolder(Folder)
        Excluded_File = "liste.txt"
        For Each File in objFolder.Files
            If LCase(fso.GetExtensionName(File)) = "txt" And File.Name <> Excluded_File And File.Size <> 0 Then
                FileName = File.Name
                Contenu = ReadFile(File,"all") 
                TXT_Copied = TXT_Copied & DblQuote(FileName) & vbCrLf & Contenu & vbCrLf & vbCrLf
    'Msgbox "The File " & DblQuote(FileName) & " is copied on " & vbCrLf &_
    'DblQuote(Contenu),vbInformation,DblQuote(File)         
            End If  
        Next
        Call WriteFile(TXT_Copied,LogFile)
    End Function
    '*********************************************************************
    Function DblQuote(Str)
        DblQuote = Chr(34) & Str & Chr(34)
    End Function
    '*********************************************************************
    Function ReadFile(path,mode)
        Const ForReading = 1
        Dim objFSO,objFile,i,contents
        Set objFSO = CreateObject("Scripting.FileSystemObject")
        Set objFile = objFSO.OpenTextFile(path,ForReading,-2)
        If mode = "byline" then
            Dim arrFileLines()
            i = 0
            Do Until objFile.AtEndOfStream
                Redim Preserve arrFileLines(i)
                strLine = objFile.ReadLine
                strLine = Trim(strLine)
                If Len(strLine) > 0 Then
                    arrFileLines(i) = strLine
                    i = i + 1
                    ReadFile = arrFileLines
                End If    
            Loop
            objFile.Close
        End If
        If mode = "all"  Then
            contents = objFile.ReadAll
            ReadFile = contents
            objFile.Close
        End If
    End Function
    '*****************************************************************
    'Fonction pour écrire le résultat dans un fichier texte
    Sub WriteFile(strText,LogFile)
        Dim fs,ts 
        Const ForAppending = 8
        Set fs = CreateObject("Scripting.FileSystemObject")
        Set ts = fs.OpenTextFile(LogFile,ForAppending,True,-1)
        ts.WriteLine strText
        ts.Close
    End Sub
    '*****************************************************************

  17. #17
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2016
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 9
    Points : 9
    Points
    9
    Par défaut
    Merci beaucoup hackoofr, Nickel.

    François

  18. #18
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 839
    Points : 9 222
    Points
    9 222
    Par défaut
    Citation Envoyé par garfield1701 Voir le message
    Merci beaucoup hackoofr, Nickel.
    François
    ou est mon +1

  19. #19
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2016
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 9
    Points : 9
    Points
    9
    Par défaut
    Oups j'avais oublié, voilà c'est fait

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 26/10/2009, 13h32
  2. Rajouter titre et nom des colonnes sur fichier texte
    Par pierre24 dans le forum ODS et reporting
    Réponses: 6
    Dernier message: 22/04/2008, 10h44
  3. Récuperer une valeur dans un fichier texte
    Par sucrepop dans le forum Langage
    Réponses: 6
    Dernier message: 05/06/2007, 15h01
  4. Lecture nom et contenu dans fichier
    Par Tempotpo dans le forum Langage
    Réponses: 2
    Dernier message: 19/05/2006, 14h11
  5. [JTable] Comment récuperer les données d'un fichier texte ?
    Par Makunouchi dans le forum Composants
    Réponses: 2
    Dernier message: 03/05/2005, 16h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo