I'd like to put the assign and reset of a text file into a function, and then use the function to return a line from the file, without needing to close the file then re assign and reset every time (for performance reasons) - see below for my attempt.
This doesn't work because I guess the file handles etc are local to the function are volatile, so cannot be accessed in the main program Is there a simple way to fix this ie to make this function work. Of course one can const in a function to make normal variables non volatile...but files etc? TIA for any ideas...John main program... get_line('tmp.tmp,0), to assign and reset; {get lines} str1:=get_line('tmp.tmp,1); str2:=get_line('tmp.tmp,1) .... {close) get_line('tmp.tmp,2) assume function is defined as function get_line( fname;string;flag:longint):string; var f:text begin if flag=0 then begin assign(f,fname); reset(f); end; if flag=1 then while not eof(f) do begin readln(f); end; if flag=2 then close(f); get_line;=f; end;
_______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal