Bonjour tous le monde,
J'ai tellement regardé le forum que je le connait par coeur
J'ai suivi tous les conseil que j'ai lu mais malgré tout
j'ai un problème que je ne sais pas résoudre (et c'est pas pour les cours)!
Bon d'abord , j' ai déjà fait des programmes qui permettait enregistrer des variables ou des types records dans des fichiers sans trop de problème(reset,append,assing,....).
Mais là je comprends pas .
1) Ce que je veux faire et qui marche : récuperer ,le "chemin" d'un fichier(ex:c:\1\2\) , "extraire" le nom du fichier , avoir la taille du fichier , le nombre de ligne du fichier , j'ai mis tous ça dans 4 variables.
2) Ce que je veux faire et qui ne marche vraiment mais alors là vraiment pas Envoyer les 4 variables dans une autre procedure et simplement les écrire les une à la suite de l'autre à la fin d'un fichier que j'appelle "cfg.ini" qui existe déjà. A chaque tentative je reçois erreur E/S 103 . j'ai essayé avec {$I-}et{$I+} et rien à faire
Si quelqu'un à une idée merci beaucoup !
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 procedure TForm4.Button2Click(Sender: TObject); var f:textfile;i:integer;ligne,Nom_fichier,chemin,taille,nbre_ligne:string; begin i:=0; if opendialog1.Execute then begin chemin:=opendialog1.FileName; Nom_fichier:=extractfilename(opendialog1.filename); assignfile(f,opendialog1.FileName); reset(f); //calcul le nombre de ligne while not eof(f) do begin readln(f,ligne); inc(i); end; closefile(f); //calcul la taille du fichier taille:=inttostr(filesize(f)); nbre_ligne:=inttostr(i); Uutil.sauver_dans_fichier(nom_fichier,chemin,taille,nbre_ligne); end; end; procedure sauver_dans_fichier(nom,chemin,taille,nbre_ligne:string); Var spec:text;nom_fichier:string; begin nom_fichier:=('cfg.ini'); Assign(spec,'cfg.ini'); rewrite(spec); writeln(spec,nom); writeln(spec,chemin); writeln(spec,taille); writeln(spec,nbre_ligne); close(spec); end;
Andy
Partager