Hoe kom ik bij end of file in een niet-test bestand..

Status
Niet open voor verdere reacties.

adjes26

Gebruiker
Lid geworden
4 okt 2003
Berichten
51
Ik ben bezig met het maken van een database in pascal/delphi. Mijn probleem is dat ik niet weet hoe ik bij het einde van een file kom als het bestand al gegevens bevat. De gegevens moeten dus worden toegevoegd en niet worden overschreven. Hieronder staat een gedeelte van mijn programma.. :

readln(Bestandsnaam);
assign(Bestand, BestandsNaam);
{$I-} Reset(Bestand); {$I+}
IORes:=IOResult;
writeln(IOres);
If IORes = 0 then
begin
writeln('Bestand ',BestandsNaam,' is geopend.');
writeln('Druk op ENTER om verder te gaan.');
ReadLn;
Open:=true
end

else begin
rewrite(Bestand);
writeln('Bestand ',BestandsNaam,' bestaat niet en wordt nu aangemaakt.');
writeln('Druk op ENTER om verder te gaan.');
readln;
Open:=true;
end;

Weet iemand dit?
 
Laatst bewerkt:
Makkelijker als je gebruik maakt van ADO component

Geplaatst door adjes26
Ik ben bezig met het maken van een database in pascal/delphi. Mijn probleem is dat ik niet weet hoe ik bij het einde van een file kom als het bestand al gegevens bevat. De gegevens moeten dus worden toegevoegd en niet worden overschreven. Hieronder staat een gedeelte van mijn programma.. :

readln(Bestandsnaam);
assign(Bestand, BestandsNaam);
{$I-} Reset(Bestand); {$I+}
IORes:=IOResult;
writeln(IOres);
If IORes = 0 then
begin
writeln('Bestand ',BestandsNaam,' is geopend.');
writeln('Druk op ENTER om verder te gaan.');
ReadLn;
Open:=true
end

else begin
rewrite(Bestand);
writeln('Bestand ',BestandsNaam,' bestaat niet en wordt nu aangemaakt.');
writeln('Druk op ENTER om verder te gaan.');
readln;
Open:=true;
end;

Weet iemand dit?

Het is makkelijker om bijvoorbeeld een database in MS Access aan te maken en dan met een ADO component deze database te benaderen. Waarom zou je een database willen maken in een gewoon tekstbestand? Je mist zo alle faciliteiten die een database je kan bieden, zoals relaties met andere tabellen.....
 
Geplaatst door rob.jongejan
Het is makkelijker om bijvoorbeeld een database in MS Access aan te maken en dan met een ADO component deze database te benaderen. Waarom zou je een database willen maken in een gewoon tekstbestand? Je mist zo alle faciliteiten die een database je kan bieden, zoals relaties met andere tabellen.....
Faciliteiten die je softwarematig wel gewoon kan inbouwen. Tenslotte worden tabellen en data in en om die tabellen ook in flatfiles opgeslagen, het is de software die er wat mee doet.
 
append(Bestand); ?

daarmee zet je in turbopascal (3.02) de filepointer na het laatste element.
Misschien is Append in de taal die je gebruikt met een hoofdletter.

readln(Bestandsnaam);
assign(Bestand, BestandsNaam);
{$I-} Reset(Bestand); {$I+}
IORes:=IOResult;
writeln(IOres);
If IORes = 0 then
begin
append(Bestand);
writeln('Bestand ',BestandsNaam,' is geopend.');
writeln('Druk op ENTER om verder te gaan.');
ReadLn;
Open:=true
end

else begin
rewrite(Bestand);
writeln('Bestand ',BestandsNaam,' bestaat niet en wordt nu aangemaakt.');
writeln('Druk op ENTER om verder te gaan.');
readln;
Open:=true;
end;


Vr.Gr. Egel.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan