添加新数据后如何保存现有文件
add_a_link(X,Y) :-
tell('alink.txt'),
write(X),
write('.'),
write(Y),
write('.'),
put(10),
told,
write('data written'),
nl.
此代码仅重写文本文件。
Use open/3
和面向流的 I/O:
open(file, append, S), write(S, info(X,Y)), put_char(S,.), nl(S), close(S).
Using tell/1
and told
极其不可靠。很容易发生输出被意外写入另一个文件的情况。
编辑:这是一个例子来说明极其不可靠的属性tell/1
and told
.
说,你写tell(file), X > 3, write(biggervalue), told.
只要这样就可以正常工作X > 3
。但如果值较小,则该查询会失败并且不会写入任何内容。这可能就是你的意图。然而,程序中其他地方的下一个输出现在将进入file
。这是你永远不想发生的事情。因此 ISO-Prolog 没有tell/1
and told
反而open/3
and close/1
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)