3

我很难弄清楚这一点,尽管这是用其他语言做的最简单的事情之一:有没有一种简单的方法可以将文本文件的全部内容读入 Prolog 变量?

4

2 回答 2

6

只需使用 DCG 说明您要描述的内容,然后使用 library(pio) 从文件中解析:

:- use_module(library(pio)).

all([])     --> [].
all([L|Ls]) --> [L], all(Ls).

例子:

?- once(phrase_from_file(all(Ls), 'all.pl')).
Ls = [10, 58, 45, 32, 117, 115, 101, 95, 109|...].
于 2012-06-19T19:13:52.457 回答
3

library(readutil)中有一些内置函数:参见read_file_to_codesread_file_to_terms

于 2012-06-19T22:26:05.040 回答