, :
1. openwrite. , . , . , existfile, , existfile .
2. writedevice.
3. write writef.
4. , .
5. closefile.
/* */
domains
str = string
file = datafile
predicates
data (str)
write_lines
goal
openwrite (data, a1.dat),
write_lines,
closefile (datafile)
clauses
data (aaaa).
data (bbbb).
data (cccc).
.......
write_lines:- data (Line),
write ( , Line), nl,
writedevice (screen),
fail,
write_lines.
/* */
domains
file = datafile
kstr, fstr = string
predicates
readin (kstr, fstr) % -
create_file
goal
create_file
clauses
create_file:- nl, nl,
write ( ),
nl, nl, readln(FileName),
openwrite (datafile),
writedevice (datafile),
readln (Kstr),
concat (Kstr, \13\10, Fstr),
readin (Kstr, FStr),
closefile (datafile).
readin (_, Fstr):- write (FStr), readln (KStr1),
concat (KStr1, \13\10, Fstr1),
readin (Kstr1, Fstr1).
1. openread.
2. readdevice.
3. .
4. .
5. close.
/* */
domains
file = datafile
predicates
read_and_print
read_file
goal
read_file
clauses
read_file:- write ( ), nl,
readln(FileName), nl,
openread (datafile, FileName), readdevice (datafile),
read_and_print, closefile (datafile),nl,
write ( ), readdevice (keyboard),
readchar (_), exit.
read_and_print:- not (eof(datafile)), readln (Fstr), write (Fstr), nl,
writedevice (printer), write (Fstr), writedevice (screen), read_and_print.
read_and_print:- eof(datafile),!.
process_append:- write ( ), nl,
readln (Filename), nl, write ( ), nl,
openappend (datafile, Filename), writedevice (datafile), readln (Kstr),
concat (Ksrt, \13\10, Fstr), readin (Kstr, Fstr), closefile (datafile).
% readin .