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

Langage Delphi Discussion :

Comment mettre dans un .Txt ce qu'il y a dans un tableau?


Sujet :

Langage Delphi

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 177
    Points : 74
    Points
    74
    Par défaut Comment mettre dans un .Txt ce qu'il y a dans un tableau?
    voilà tout est dans le titre comment mettre ce qu'il y a dans un tableau dans un fichier texte .txt donc avec genre un espace entre chaque cellulle d'une même ligne ou des points virgules.Merci de votre aide!

  2. #2
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Bonjour,

    Voici un code de base pour crééer un fichier txt avec des points vigules comme délimiteurs ASCII et qui sera compatible avec Excel.

    Attention, s'il y a des ";" dans les cellules du tableau il faut faire un traitement spécial pour les sauvegarder et les récupérer.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    var tsl : tstringlist ;
          s :string ;      
    begin
    tsl:=tstringlist.create ;
    for y:=0 to tstringgrid1.rows.count do begin 
         s:='' ;
         for x:=0 to tstringgrid1.rows.count do s:=s+tstringgrid1.cells(x,y)+';' ;
         tsl.add(s) ;
         end ;
    tsl.savetofile('myfile.txt') ;
    tsl.free ;
    end ;
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

  3. #3
    Membre confirmé

    Inscrit en
    Novembre 2002
    Messages
    748
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 748
    Points : 500
    Points
    500
    Par défaut
    salut ,

    tu doit simplement parcourir tout ton tableau ligne par ligne , pour chaque ligne cumuler dans un string toutes les cellules de ta ligne en inserant un caractere entre chaque colonne et ecrit ta ligne dans le fichier texte avant de passer a la suivante.
    tu peux inclure cela dans la routine de sauvegarde.

    bye
    Bye et bon code...

    Ce n'est pas tant l'aide de nos amis qui nous aide , mais notre confiance dans cette aide .

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 177
    Points : 74
    Points
    74
    Par défaut
    Citation Envoyé par Graffito
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    var tsl : tstringlist ;
          s :string ;      
    begin
    tsl:=tstringlist.create ;
    for y:=0 to tstringgrid1.rows.count do begin 
         s:='' ;
         for x:=0 to tstringgrid1.rows.count do s:=s+tstringgrid1.cells(x,y)+';' ;
         tsl.add(s) ;
         end ;
    tsl.savetofile('myfile.txt') ;
    tsl.free ;
    end ;
    Merci pour ton code et je l'ai modifié vu qu'il y avait des erreurs :

    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
    var
    tsl:tstringlist ;
    s:string ;
    y,x:integer;
    begin
    tsl:=tstringlist.create ;
    for y:=0 to stringgrid1.RowCount-1 do
         begin
         s:='' ;
         for x:=0 to stringgrid1.ColCount-1 do
         s:=s+stringgrid1.cells[x,y]+';' ;
         tsl.add(s) ;
         end ;
    tsl.savetofile('essai.txt') ;
    tsl.free ;
    ShowMessage('Transfert Données Effectué!!!')
    end ;
    et il faut mettre le fichier texte là où il y a le programme!je pense que l'on peut mettre la direction d'un répertoire si l'on mais je n'ai pas testé!

    Merci encore!

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 22/10/2013, 16h57
  2. [AC-2007] Comment mettre dans une table un fichier Excel ou Txt en vba ?
    Par Debutant10 dans le forum VBA Access
    Réponses: 8
    Dernier message: 21/09/2013, 11h48
  3. Réponses: 9
    Dernier message: 08/11/2010, 17h12
  4. Réponses: 1
    Dernier message: 02/10/2010, 16h43
  5. comment mettre le resultat d'une select dans fich txt
    Par StyleXP dans le forum Langage
    Réponses: 3
    Dernier message: 31/05/2006, 15h07

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