Modification fichier texte

gabs77 Messages postés 379 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 8 octobre 2008 - 23 janv. 2007 à 11:59
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 - 24 janv. 2007 à 21:27
bonjour,
je travaille actuellement avec un fichier texte.
Ce fichier texte est la liste des fetes a feter donc chaque ligne correspond a une date et a un ou plusieurs nom(s)
c est présenté sous la forme suivante : jj/mm : personne1/personne2/etc...
 ex  avec un extrait du fichier texte utilisé

01/03 : Aubin/
02/03 : Fête des Grands-Mères/
03/03 : Guénolé/
04/03 : Casimir/(Mardi gras)/
05/03 : Olive/
06/03 : Colette/
07/03 : Félicité/
08/03 : Jean de Dieu/
09/03 : Françoise/
10/03 : Vivien/
11/03 : Rosine/

je souhaite a partir de la avoir la possibilité d'ajouter une fete a une date donnée par l intermediaire de 2 edits
ex :
edit1 => 03/03
edit2 => Quentin
resultat souhaiter :

01/03 : Aubin/
02/03 : Fête des Grands-Mères/
03/03 : Guénolé/Quentin/
04/03 : Casimir/(Mardi gras)/
05/03 : Olive/
06/03 : Colette/
07/03 : Félicité/
08/03 : Jean de Dieu/
09/03 : Françoise/
10/03 : Vivien/
11/03 : Rosine/

4 réponses

cs_Loda Messages postés 814 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 30 juillet 2009 3
23 janv. 2007 à 12:59
et quelle est ta question???

sans question, je te donne une voie général.

<li>utilise un TStringList pour charger le fichier</li><li>parcourt le à la recherche de ta date (fait les vérifiaction d'usage sur le format et la validité avant.)</li><li>puis, ajout le nom (ev. ajout des test pour les doublons ou les homonymes)</li><li>et pour finir sauve le fichier</li>
un détail en passant

avec un TMemo.Lines.Delimiter:= '/' et un pos/copy tu peux charger ta list de nom assez facilement.

Si t'as une question précis sur une étape et que tu ne trouve pas de réponse, post une question...

Loda
<hr size="2" width="100%" />Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.
0
f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 35
23 janv. 2007 à 14:24
uses StrUtils;

function GetStrPart(const Str, Delimiter: String; const WordIndex: cardinal = 1): String;
var I,P1,P2,LD : integer;
begin
  Result := '';
  if (posex(Delimiter,Str[1]) = 1) and (WordIndex <= 1) then exit;
  P1 := 1;
  LD := Length(Delimiter);
  for I := 1 to WordIndex-1 do begin
      P1 := posex(Delimiter, Str, P1);
      if P1 = 0 then
         exit
      else
         P1 := P1 + LD;
  end;
  P2 := posex(Delimiter, Str, P1);
  if P2 = 0 then
     P2 := length(Str) + 1;
  Result := copy(Str, P1, P2 - P1);
end;




Edit1.Text := GetStrPart(List[N], ':', 1); // renvois la date
Edit2.Text := GetStrPart(List[N], ':', 2); // renvois les noms
Edit3.Text := GetStrPart(Edit2.Text, '/', 1); renvois le premier nom

<hr size="2" width="100%" />Croc (click me)
0
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
23 janv. 2007 à 14:45
regarde ici :http://diabloporc.free.fr/delphi/gabs77/
je t'ai fait un ptit code et un exe =)

Mon site DELPHI =)
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
24 janv. 2007 à 21:27
bravo foxi pour la simplification de la fonction GetStrPart

cantador
0
Rejoignez-nous