Chaine vide (longueur variable) dans un fichier texte. [Résolu]

Signaler
Messages postés
2
Date d'inscription
mardi 7 octobre 2008
Statut
Membre
Dernière intervention
2 août 2009
-
Messages postés
3874
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
7 novembre 2014
-
Merci de l'interet que vous porterez à ma question. La dernière fois j'ai omis de spécifier le langage de programmation : c'est delphi 5.
Je reposerai quand meme mon probléme :
je dois créer un fichier texte à partir d'une table paradox. jusque là tout fonctionne bien. mon souhait est si j'ai un champ (par exemple adresse sur 70 caracteres, alors que 50 seulement sont remplis, donc je dois affichier dans mon fichier texte 50 caracteres remplis et 20 comme chaine vide).
Voilà à peu prés le résultat souhaité :
code nom adresse
---------------------------------------
0001 Nom1111111 Adresse1111111111111
0002 Nom22222222222222 Adresse2222222222222222222
0003 Nom33333 Adresse333333
0004 Nom44444444444444444444444 Adresse444444444444444444444444444
--------------------------------------------------------------------
merci d'avance

3 réponses

Messages postés
4715
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
13
arf la balise de code :

procedure TForm1.Button16Click(Sender: TObject); 
var 
F1: textFile; 
LChp: integer; 
begin 
LChp := Query1Event_Name.Size; 
AssignFile(F1, 'c:\tmp\test.csv'); 
Rewrite(F1); 
Query1.First; 
while not Query1.Eof do 
begin 
WriteLn(F1, Query1Event_Name.Text + StringOfChar('1', LCHP - Length(Query1Event_Name.Text))); 
Query1.Next; 
end; 
CloseFile(F1); 
end; 


cantador
Messages postés
4715
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
13
bonjour,
la question est claire mais les exemples..

je te propose ce code pas optimisé du tout sur la table Events de la démo de Borland.

procedure TForm1.Button16Click(Sender: TObject);
var
F1: textFile;
LChp: integer;
begin
LChp := Query1Event_Name.Size;
AssignFile(F1, 'c:\tmp\test.csv');
Rewrite(F1);
Query1.First;
while not Query1.Eof do
begin
WriteLn(F1, Query1Event_Name.Text + StringOfChar('1', LCHP - Length(Query1Event_Name.Text)));
Query1.Next;
end;
CloseFile(F1);
end;

on peut mieux faire en écrivant une fonction et utiliser les TStringList, mais faut bien t'en laisser un peu..

cantador
Messages postés
3874
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
7 novembre 2014
11
Bonjour,

Merci de poster sur delphifr dans un thème delphi pour une question sur le Delphi.

[ Déplacé sur delphifr ]