在prolog中附加文本文件

时间:2014-08-17 15:03:28

标签: prolog

我想使用Prolog读取文本文件,然后附加该文件。我使用以下代码来做到这一点。

readWord(InStream,W) :- 
   get0(InStream,Char),
   checkCharAndReadRest(Char,Chars,InStream),
   atom_chars(W,Chars), write(W),write('\n').

checkCharAndReadRest(10,[],_) :- !. % Return
checkCharAndReadRest(32,[],_) :- !. % Space
checkCharAndReadRest(-1,[],_) :- !. % End of Stream
checkCharAndReadRest(end_of_file,[],_) :- !.

checkCharAndReadRest(Char,[Char|Chars],InStream) :-
   get0(InStream,NextChar),
   checkCharAndReadRest(NextChar,Chars,InStream).

writeWord(end_of_file). 
writeWord(X) :-
   write(X),nl.

readFile:-
    open('output.txt', read, In),
    repeat,
    readWord(In,W),
    writeWord(W),
    W == end_of_file, !,
    close(In).

adding :-
   open('output.txt', append, In),
   write(In, 'abc'),
   close(In).

示例:

  

文本文件数据 -

     

     

csu2280

     

23

     

END_OF_FILE

必需的输出 -

  

三安

     

csu2280

     

23

     

ABC

     

END_OF_FILE

但我得到了答案

  

三安

     

csu2280

     

23

     

end_of_fileabc

如何获得所需答案?

0 个答案:

没有答案