Lecture / Ecriture d'un .pgm (Merci Alex :))
|
code:
-- procedure de lecture d'un fichier
procedure remplir_matrice(mat:out matrice;ent:out entete)is
nom_fichier:string(1..50);
begin
--put("donner un nom de fichier source ");
get_line(item=>nom_fichier,last=>compt_chaine);
open (f,in_file,nom_fichier(1..compt_chaine));
for i in 1..entet loop
read (f,c);
ent (i):=c;
end loop;
for i in 1..larg loop
for j in 1..haut loop
read(f,c);
mat(i,j):=character'pos(c);
end loop;
end loop;
close(f);
end remplir_matrice;
-- procedure d'enregistrement d'un fichier
procedure vider_matrice(m:in matrice;e:in entete) is
nom_fichier_r:string(1..30);
begin
--put("donner le nom du fichier resultat ");
get_line(item=>nom_fichier_r,last=>compt_chaine);
create (f,name=>nom_fichier_r(1..compt_chaine));
-- lecture entete
for i in 1..entet loop
write(f,e(i));
end loop;
--lecture donner
for i in 1..larg loop
for j in 1..haut loop
c:=character'val(m(i,j));
write (f,c);
end loop;
end loop;
close (f);
end vider_matrice; |
|
|