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

C++Builder Discussion :

Merger (fusionner) 4 fichier txt


Sujet :

C++Builder

  1. #1
    Membre chevronné Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par défaut Merger (fusionner) 4 fichier txt
    Bonjour a Tous

    J'aimerai avec BCB6 Merger (fusionner) 4 fichier xxx.txt qui ce trouve dans le répertoire de l'application pour n'en faire qu'un xxx.txt.

    Quelqu'un aurai une petite idée, Merci

    Merci et A++

  2. #2
    Membre Expert
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Par défaut
    Voilà une piste :

    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
     
      TStringList *fichier1 = new TStringList() ;
      TStringList *fichier2 = new TStringList() ;
      TStringList *fichier3 = new TStringList() ;
      TStringList *fichier4 = new TStringList() ;
      TStringList *fichierFinal = new TStringList() ;
     
      fichier1->LoadFromFile( "C:\\Fichier1.txt" );
      fichier2->LoadFromFile( "C:\\Fichier2.txt" );
      fichier3->LoadFromFile( "C:\\Fichier3.txt" );
      fichier4->LoadFromFile( "C:\\Fichier4.txt" );
     
     
      fichierFinal->AddStrings( fichier1 ) ;
      fichierFinal->AddStrings( fichier2 ) ;
      fichierFinal->AddStrings( fichier3 ) ;
      fichierFinal->AddStrings( fichier4 ) ;
     
      fichierFinal->SaveToFile( "C:\\FichierFinal.txt" ) ;
     
      delete fichier1 ;
      delete fichier2 ;
      delete fichier3 ;
      delete fichier4 ;
      delete fichierFinal ;
    A noter que ce code peut être optimiser, mais c'était juste pour montrer l'idée.

    Bonne prog!

  3. #3
    Membre chevronné Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par défaut
    Merci sat83, je vais regarder ton code, Merci

  4. #4
    Membre chevronné Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par défaut
    voila le code, en tout ca il marche pour x fichiers

    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
    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
     
    void __fastcall TOraeditfrm1::SpeedButton5Click(TObject *Sender)
    {
    HANDLE oraHfind;
    WIN32_FIND_DATA wfd;
    char *reps[20];
    int cpt = 0;
    AnsiString orarepfich = ExtractFilePath(Application->ExeName);
    AnsiString orachemfile = "oraFile\\*.*";
    Label1->Caption = orarepfich + orachemfile;
    oraHfind = FindFirstFile(Label1->Caption.c_str(), &wfd);
     
    if(oraHfind != INVALID_HANDLE_VALUE)
    {
    do
    {
    if(wfd.cFileName[0]!='.')
    {
    reps[cpt]=(char*)malloc((strlen(wfd.cFileName)+1)*sizeof(char));
    strcpy(reps[cpt++], wfd.cFileName);
    }
    }
    while(FindNextFile(oraHfind, &wfd));
     
    TStringList *oraff1 = new TStringList();
    TStringList *oraff2 = new TStringList();
    TStringList *oraff3 = new TStringList();
    TStringList *oraff4 = new TStringList();
    TStringList *orafifi = new TStringList();
     
    oraff1->LoadFromFile(orarepfich + "oraFile\\" + reps[0]);
    oraff2->LoadFromFile(orarepfich + "oraFile\\" + reps[1]);
    oraff3->LoadFromFile(orarepfich + "oraFile\\" + reps[2]);
    oraff4->LoadFromFile(orarepfich + "oraFile\\" + reps[3]);
     
    orafifi->AddStrings(oraff1);
    orafifi->AddStrings(oraff2);
    orafifi->AddStrings(oraff3);
    orafifi->AddStrings(oraff4);
     
    AnsiString orarepfich2 = ExtractFilePath(Application->ExeName);
    AnsiString orachemfuse = "Fusion\\";
    orafifi->SaveToFile(orarepfich2 + orachemfuse + Label2->Caption + ".txt");
     
    delete oraff1;
    delete oraff2;
    delete oraff3;
    delete oraff4;
    delete orafifi;
     
    FindClose(oraHfind);
    }
    else
    {
    ShowMessage("Aucun fichiers trouvées");
    }
    }
    //---------------------------------------------------------------------------
    Merci pour ton aide sat83 et A++

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

Discussions similaires

  1. Comparer/fusionner le contenu de 2 fichiers txt
    Par klef63 dans le forum VBScript
    Réponses: 12
    Dernier message: 10/07/2012, 10h17
  2. [Débutant] fusionner des lignes fichier .txt
    Par bob633 dans le forum C#
    Réponses: 14
    Dernier message: 07/11/2011, 16h27
  3. Réponses: 1
    Dernier message: 26/03/2009, 16h56
  4. [langage] prob lecture fichier .txt
    Par martijan dans le forum Langage
    Réponses: 3
    Dernier message: 16/07/2003, 11h08
  5. communication fichier binaire fichier txt
    Par micdie dans le forum C
    Réponses: 3
    Dernier message: 05/12/2002, 00h19

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