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 :

Découper un fichier texte


Sujet :

VB.NET

  1. #1
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Points : 1 458
    Points
    1 458
    Billets dans le blog
    1
    Par défaut Découper un fichier texte
    Bonjour,

    Voilà, je dois regrouper quatre fichier en un puis les découper.
    Je voudrais que à chaque "@" dans mon fichier il saute une ligne.
    J'ai effectué quelques recherches sur les traitements de fichier mais n'ai pas trouvé mon bonheur...

    Un exemple de ligne:

    8096010010087987973@11002465464675354344535@JEAN MARC
    Et donc que cela ce change en:

    8096010010087987973@
    11002465464675354344535@
    JEAN MARC
    Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
    Un message vous a aidé, n'oubliez pas le

  2. #2
    Membre expérimenté Avatar de Uranne-jimmy
    Homme Profil pro
    Bioinformatique
    Inscrit en
    Décembre 2012
    Messages
    778
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Bioinformatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 778
    Points : 1 461
    Points
    1 461
    Par défaut
    Bonjour,
    Un petit indice seulement : String.split(), cette méthode à elle seul devrait te débloquer.
    Expert en recherche google caféinomane

  3. #3
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Points : 1 458
    Points
    1 458
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Uranne-jimmy Voir le message
    Bonjour,
    Un petit indice seulement : String.split(), cette méthode à elle seul devrait te débloquer.
    Merci, je vais me renseigner!
    Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
    Un message vous a aidé, n'oubliez pas le

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Points : 5 100
    Points
    5 100
    Par défaut
    Bonjour,
    Ou aussi avec un replace
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
            MessageBox.Show("8096010010087987973@11002465464675354344535@JEAN MARC ".Replace("@", "@" & vbCrLf))
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  5. #5
    Membre expérimenté Avatar de Uranne-jimmy
    Homme Profil pro
    Bioinformatique
    Inscrit en
    Décembre 2012
    Messages
    778
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Bioinformatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 778
    Points : 1 461
    Points
    1 461
    Par défaut
    A ouais pas faux @.@ j'ai pas donné la plus pratique des méthodes.
    Expert en recherche google caféinomane

  6. #6
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Points : 1 458
    Points
    1 458
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par rv26t Voir le message
    Bonjour,
    Ou aussi avec un replace
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
            MessageBox.Show("8096010010087987973@11002465464675354344535@JEAN MARC ".Replace("@", "@" & vbCrLf))
    Je peux faire un "replace" sur tout le fichier?
    Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
    Un message vous a aidé, n'oubliez pas le

  7. #7
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Points : 5 100
    Points
    5 100
    Par défaut
    Oui, teste avec un petit fichier et un richtextbox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RichTextBox1.Text = File.ReadAllText("D:\data\fichiers\ficrep.txt").Replace("@", "@" & vbCrLf)
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  8. #8
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Points : 1 458
    Points
    1 458
    Billets dans le blog
    1
    Par défaut
    J'ai tenté de récupèrer toutes les lignes du fichier dans allLines en utilisant le replace mais le retour chariot ne s'effectue pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Private Sub miseEnFormeFichier(ByVal cheminFichier As String)
    Dim lines As List(Of String) = System.IO.File.ReadAllLines(cheminFichier).ToList
     
    For i As Integer = 0 To lines.Count - 1
       allLines.Add(lines(i).Replace("@", "@" & vbCrLf))
    Next
     
    End Sub
    Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
    Un message vous a aidé, n'oubliez pas le

  9. #9
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Points : 1 458
    Points
    1 458
    Billets dans le blog
    1
    Par défaut
    Sinon je voulais essayer:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Liste = File.ReadAllText(fichierALHTPLUX).Replace("@", "@" & vbCrLf).ToList
    Mais j'ai l'erreur "Impossible de convertir une List(Of Char) en List(Of String)" ...
    Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
    Un message vous a aidé, n'oubliez pas le

  10. #10
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Points : 5 100
    Points
    5 100
    Par défaut
    En utilisant un fichier temporaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
            File.WriteAllText("D:\data\fichiers\temp.txt", File.ReadAllText("D:\data\fichiers\ficrep.txt").Replace("@", "@" & vbCrLf))
            Dim lines As List(Of String) = System.IO.File.ReadAllLines("D:\data\fichiers\temp.txt").ToList
    Mais bon, on doit pouvoir faire l'équivalent en mémoire.
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  11. #11
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Points : 1 458
    Points
    1 458
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par rv26t Voir le message
    En utilisant un fichier temporaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
            File.WriteAllText("D:\data\fichiers\temp.txt", File.ReadAllText("D:\data\fichiers\ficrep.txt").Replace("@", "@" & vbCrLf))
            Dim lines As List(Of String) = System.IO.File.ReadAllLines("D:\data\fichiers\temp.txt").ToList
    Mais bon, on doit pouvoir faire l'équivalent en mémoire.
    Sinon j'ai réussi comme cela: :p

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     Dim lines As List(Of String) = System.IO.File.ReadAllLines(fichier).ToList
                  For Each ligne In lines
                    Dim tmpListe As String()
                    tmpListe = ligne.Split("@")
     
                    For i As Integer = 0 To tmpListe.Count - 1
                        allLines.Add(tmpListe(i))
                    Next
                Next
    Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
    Un message vous a aidé, n'oubliez pas le

  12. #12
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Points : 5 100
    Points
    5 100
    Par défaut
    Ou plus simplement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            Dim alllines As List(Of String) = New List(Of String)
            For Each ligne In System.IO.File.ReadAllLines("D:\data\fichiers\ficrep.txt").ToList
                alllines.AddRange(ligne.Split("@"))
            Next
    Note : ' utiliser alllines.AddRange(ligne.Split(New [Char]() {"@"c})) ou alllines.AddRange(ligne.Split(Char.Parse("@"))) avec l'option strict on

    Remarque : le @ n'est pas concervé
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  13. #13
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Points : 1 458
    Points
    1 458
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par rv26t Voir le message
    Ou plus simplement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            Dim alllines As List(Of String) = New List(Of String)
            For Each ligne In System.IO.File.ReadAllLines("D:\data\fichiers\ficrep.txt").ToList
                alllines.AddRange(ligne.Split("@"))
            Next
    Note : ' utiliser alllines.AddRange(ligne.Split(New [Char]() {"@"c})) ou alllines.AddRange(ligne.Split(Char.Parse("@"))) avec l'option strict on

    Remarque : le @ n'est pas concervé
    Effectivement!

    Merci pour votre aide!
    Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
    Un message vous a aidé, n'oubliez pas le

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

Discussions similaires

  1. Découper un fichier texte positionnel ?
    Par nanie42 dans le forum Développement de jobs
    Réponses: 15
    Dernier message: 30/04/2015, 11h37
  2. [2008] Découper un fichier texte avec séparateur ";"
    Par Daniel MOREAU dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 10/04/2014, 17h17
  3. Réponses: 2
    Dernier message: 14/12/2009, 11h36
  4. [Batch] Découper un fichier texte
    Par brolon dans le forum Scripts/Batch
    Réponses: 0
    Dernier message: 31/03/2009, 16h06
  5. Découper un fichier texte
    Par idalloul dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 07/10/2008, 10h27

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