Bonjour
Voilà je suis étudiant et nous travaillons sur l'ada en ce moment. Et lors d'un tp que j'avais largement terminé je voulais aller plus loin. Le tp consistait en une manipulation d'un fichier constitué de données de type article et qu'il fallait mettre dans un autre fichier etc...
Mais de mon côté, j'ai voulu faire en sorte que l'on puisse spécifier le nom du fichier. Mais le problème, lorsque l'on écrit 2 fois de suite le même nom de fichier, il écrase le précédent et pour ce faire j'ai voulu bricoler au niveau d'une exception Name_Error en essayant de l'ouvrir. Mais j'ai des petits problèmes au niveau du code .
Tout d'abord, au niveau de la déclaration de l'exception, qui fonctionne mais qui me paraît étonnante. Parce que si je ne fais pas comme ça j'ai une erreur qui me dit
Voilà je vous met le dit code à problèmeName_Error is not visible.
J'utilise un package étudiant, et les variables ont été déclarées plus haut.
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 Name_Error : exception renames Ada.IO_Exceptions.Name_Error; begin ecrire("bonjour, que voulez vous faire ? "); A_LA_LIGNE; ecrire_ligne("1: Création");ecrire_ligne("2: Affichage");ecrire_ligne("3: Ajout et suppression"); lire(choix); case choix is when 1 => loop begin ecrire_ligne("Quelle est le nom que vous voulez donner au fichier ? :>"); LIRE_TRANCHE(N_Fich,e); P_Eclipses_Io.open(f1,P_Eclipses_Io.In_File, N_Fich(1..e)&".dat") ; P_Eclipses_io.close(f1); exception when Name_Error => ecrire_ligne(" il existe dèja ce fichier " ); end; end loop;
Merci d'avance de vos réponses.
Partager