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

VB.NET Discussion :

Récupérer tous les fichiers texte en un seul fichier [Débutant]


Sujet :

VB.NET

  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2013
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Récupérer tous les fichiers texte en un seul fichier
    Bonjour à tous,

    Je fais appel à la communauté pour me permettre d'avancer dans mon script.
    Je cherche à récupérer tous mes fichiers texte dans un fichier unique.
    Le dossier "recup" s’installe dans C:\ ainsi que le fichier bigdata.txt.
    Je me perds un peu dans le reste du code .
    Merci, d'avance.

    Code : 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
    Imports System
    Imports System.Text
    Imports System.IO
    Imports System.Collections.Generic
     
    Public Class Form1
     
        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
     
            Dim sb As New StringBuilder() ' Imports System.Text
     
            For Each txtName As String In Directory.EnumerateFiles("C:\Users\hugo\Documents", "*.txt", SearchOption.AllDirectories)
                Using sr As New StreamReader(txtName)
                    sb.Append(txtName.ToString())
                    sb.AppendLine("======")
                    sb.Append(sr.ReadToEnd())
                    sb.AppendLine()
                    sb.AppendLine()
                End Using
            Next
     
            Using outfile As New StreamWriter("C:\Recup" + "\bigdata.txt")
                outfile.Write(sb.ToString())
            End Using
     
        End Sub
    End Class

  2. #2
    Membre expert


    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 970
    Points : 3 304
    Points
    3 304
    Par défaut
    Quel est exactement ton soucis, la je ne vois pas au premier coup d’œil sans tester ce qui pourrait clocher.

  3. #3
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Remplaces ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    For Each txtName As String In Directory.EnumerateFiles("C:\Users\hugo\Documents", "*.txt", SearchOption.AllDirectories)
    Par cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    For Each txtName As String In Directory.GetFiles("C:\Users\hugo\Documents", "*.txt", SearchOption.TopDirectoryOnly)
    Places ton code dans une clause Try Catch pour savoir ce qui cloche lors du debug.

  4. #4
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2013
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Suite script
    Citation Envoyé par wallace1 Voir le message
    Remplaces ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    For Each txtName As String In Directory.EnumerateFiles("C:\Users\hugo\Documents", "*.txt", SearchOption.AllDirectories)
    Par cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    For Each txtName As String In Directory.GetFiles("C:\Users\hugo\Documents", "*.txt", SearchOption.TopDirectoryOnly)
    Places ton code dans une clause Try Catch pour savoir ce qui cloche lors du debug.

    Salut et encore merci d'avoir jeté un coup d’œil.
    Je me suis mal exprimé

    La ligne de code que tu m'as passé fonctionne mais elle énumère les dossiers ainsi que leurs fichiers.
    En utilisant la fonction <!--Directory.EnumerateFiles-->, je recherche à écrire le contenu de tout mes fichiers texte dans un seul fichier texte.
    Ya comme un truc bizarre dans mon script de base, il fonctionne qu'en je suis dans sur le bureau "Desktop" mais qu'en je passe dans le dossier "Documents" plus rien ne marche sauf si j’enlève la fonction<!--SearchOption.AllDirectories-->.
    Est ce possible de faire la même chose en étant sur C:\ ?

  5. #5
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2013
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Résolu
    J'ai pu résoudre mon problème en rajoutant une "exception" -> Catch ex As UnauthorizedAccessException.

    PS: la MsgBox indique: l’accès au chemin d'accès C:\Users\hugo\Documents\Ma musique est refusé
    et pourtant c'est "C:\Users\hugo\Documents"

    Merci wallace1

    Code : 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
    Imports System
    Imports System.Text
    Imports System.IO
    Imports System.Collections.Generic
     
    Public Class Form1
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
     
            Dim sb As New StringBuilder() ' Imports System.Text
     
            Try
     
                For Each txtName As String In Directory.EnumerateFiles("C:\Users\hugo\Documents", "*.txt", SearchOption.AllDirectories) ' erreur avec \Documents
     
                    Using sr As New StreamReader(txtName)
                        sb.AppendLine(txtName.ToString())
                        sb.AppendLine("<--------------------------------------------->")
                        sb.AppendLine()
                        sb.Append(sr.ReadToEnd())
                        sb.AppendLine()
                        sb.AppendLine()
                    End Using
                Next
            Catch ex As UnauthorizedAccessException
                ' MsgBox(Err.Description)
            End Try
            Using outfile As New StreamWriter("C:\Dossier" + "\bigdata.txt")
                outfile.Write(sb.ToString())
            End Using
     
        End Sub

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 04/02/2014, 23h20
  2. [XL-2010] Copier le contenu d'un fichier texte dans un autre fichier texte
    Par Piixx_e dans le forum Macros et VBA Excel
    Réponses: 29
    Dernier message: 15/11/2013, 11h31
  3. copier plusieurs fichiers texte dans un seul fichier texte
    Par ERICKO dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 17/08/2008, 20h21
  4. Parcourir un répertoire et récupérer tous les fichiers
    Par Sniper94-2 dans le forum Windows
    Réponses: 6
    Dernier message: 08/09/2005, 01h23
  5. [Plugin] Récupérer tous les fichiers *.java d'un workspace
    Par Satch dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 02/06/2004, 12h51

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