Probleme gestion fichier typé pascal
Résolu/Fermé
offa
Messages postés
21
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
23 avril 2008
-
5 nov. 2007 à 22:55
ZOUARI Messages postés 60 Date d'inscription lundi 26 avril 2004 Statut Contributeur Dernière intervention 14 mai 2011 - 8 janv. 2008 à 13:06
ZOUARI Messages postés 60 Date d'inscription lundi 26 avril 2004 Statut Contributeur Dernière intervention 14 mai 2011 - 8 janv. 2008 à 13:06
A voir également:
- Probleme gestion fichier typé pascal
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Ouvrir fichier .bin - Guide
- Turbo pascal download - Télécharger - Édition & Programmation
3 réponses
ZOUARI
Messages postés
60
Date d'inscription
lundi 26 avril 2004
Statut
Contributeur
Dernière intervention
14 mai 2011
29
14 déc. 2007 à 16:16
14 déc. 2007 à 16:16
il faut ajouter la procédure Reset avant de commençer votre recherche ou bien l'affichage
Voila la solution: (il faut changer les noms des structures de données)
program te;
uses wincrt;
type
test=record
nom:string;
age:integer;
end;
fiche=file of test;
var f:fiche;
x,t:test;rep:char;exis,nomP:string;
begin
assign(f,'c:\ficenre');
rewrite(f);
repeat
with x do
begin
writeln('nom=');
readln(nom);
writeln('age=');
readln(age);
end;
write(f,x);
writeln('Voulez vous enregistrer un autre test ');
readln(rep);
until (upcase(rep) = 'N');
writeln('donnez un nom');
readln(nomP);
Reset (f);
while not eof(f) do
begin
read(f,t);
if nomp = t.nom then
writeln('bon');
end;
close(f);
end.
Voila la solution: (il faut changer les noms des structures de données)
program te;
uses wincrt;
type
test=record
nom:string;
age:integer;
end;
fiche=file of test;
var f:fiche;
x,t:test;rep:char;exis,nomP:string;
begin
assign(f,'c:\ficenre');
rewrite(f);
repeat
with x do
begin
writeln('nom=');
readln(nom);
writeln('age=');
readln(age);
end;
write(f,x);
writeln('Voulez vous enregistrer un autre test ');
readln(rep);
until (upcase(rep) = 'N');
writeln('donnez un nom');
readln(nomP);
Reset (f);
while not eof(f) do
begin
read(f,t);
if nomp = t.nom then
writeln('bon');
end;
close(f);
end.
offa
Messages postés
21
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
23 avril 2008
8
24 déc. 2007 à 00:00
24 déc. 2007 à 00:00
s il vous plait j ai besoin de votre aide je sait pas comment manipuler les fichiers de type chaine de caractere
merci
merci
ZOUARI
Messages postés
60
Date d'inscription
lundi 26 avril 2004
Statut
Contributeur
Dernière intervention
14 mai 2011
29
8 janv. 2008 à 13:06
8 janv. 2008 à 13:06
Tout d'abord il faut comprendre la différence entre un fichier typé et un fichier texte:
un fichier typé signéfié qu'il est composeé des enregistrements de même type, et on le déclare de cette mamière:
nom_logique : file of type_composants;
exemples:
f1 : file of integer;
f2 : file of real;
f3 : file of char;
f4 : file of string;
mais un fichier texte il est composé par lignes et bien sur chaque ligne est composé par des caractères c'est pourquoi en peut le nommé aussi fichier ASCII ,et on le déclare de cette manière:
nom_logique : Text;
exemple
f5 : text;
Donc un fichier texte n'est pas un fichier de type caractère et non plus de type chaîne de caractères
donc si en dit que j'ai un fichier de type chaîne de caractères il faut comprendre qu'il ne s'agit pas d'un fichier texte;
Si cela est bien claire il faut s'avoir ensuite les fonctions et les procédures qui peuvent être applique sur les fichiers typés et sur les fichiers texte, comme filePos, seek, truncate, eof, writeln, readln, filesize, rename, erase, ...
A la fin il faux s'avoir comment combiner les instructions naicessaire pour atteindre votre objectif (résoudre votre broblème).
un fichier typé signéfié qu'il est composeé des enregistrements de même type, et on le déclare de cette mamière:
nom_logique : file of type_composants;
exemples:
f1 : file of integer;
f2 : file of real;
f3 : file of char;
f4 : file of string;
mais un fichier texte il est composé par lignes et bien sur chaque ligne est composé par des caractères c'est pourquoi en peut le nommé aussi fichier ASCII ,et on le déclare de cette manière:
nom_logique : Text;
exemple
f5 : text;
Donc un fichier texte n'est pas un fichier de type caractère et non plus de type chaîne de caractères
donc si en dit que j'ai un fichier de type chaîne de caractères il faut comprendre qu'il ne s'agit pas d'un fichier texte;
Si cela est bien claire il faut s'avoir ensuite les fonctions et les procédures qui peuvent être applique sur les fichiers typés et sur les fichiers texte, comme filePos, seek, truncate, eof, writeln, readln, filesize, rename, erase, ...
A la fin il faux s'avoir comment combiner les instructions naicessaire pour atteindre votre objectif (résoudre votre broblème).